天天看點

完成項目的一點思考

在新公司搞一個項目練練手,熟悉流程。到現在大體流程也熟悉了一遍,做東西的時候有點思考。

畢竟自己讀書少,大部分時間花在寫代碼上,如果寫代碼的時候再不思考,那就和鹹魚沒什麼差別了。标題寫成一點思考,自己想的還是太少。

項目過程

這段時間接手了幾個項目,有一個是往舊的項目上加功能,一個是完全自己開發的小系統。

整體設計:從etcd中拉取配置資訊,一般為資料庫,redis的配置資訊。

一般不是直連MySQL和Redis的,看業務而定,連接配接的的是KingShard,Codis-proxy。

内部系統并沒有用到緩存,有些需要使用SOA調用,基于Http的方式,消息隊列用的是Redis,Redis做消息隊列要在用戶端做一些額外的操作。沒有專門的MQ好用。

代碼層面,獨立開發的東西,我用的是Spring Boot,要依賴公司内部的一些jar包之類的,因為早先使用的是Tomcat + war包,Spring Boot還沒大規模使用,一些腳手架需要做一下,自己做了一個Spring Boot Starter。

個人系統:Spring,Spring MVC,BUI做背景頁面, Mybatis操作資料庫, Spring Boot提供打包什麼的

舊系統:Spring Spring MVC, JPA操作資料庫,Jquery EasyUI做背景頁面

自己寫前端頁面的時候,傾向于前後端分離,直接寫的HTML頁面,加ajax請求

老系統用的是JSP,資料通過jsp的屬性注入方式

部署方式:

  • 開發環境,舊項目,自己上傳,然後用supervisor進行控制啟動,停止。 我用的是Ansible,直接控制,沒有用supervisor
  • 測試環境,使用git上傳到内部的git倉庫,然後觸發Jenkins打包并且部署。
  • 線上知道用的是lvs + keepalived,然後redis,mysql的叢集高可用。線上由運維來部署,開發不參與

資料庫方面:

  • 開發完成之後,寫好文檔,由DBA稽核資料表,并且建立表

單點登入用的是CAS,平時有問題就問問老員工

感受

單獨使用自己的技術開發項目的時候感覺還不錯,等到在舊項目之上進行開發的時候,覺得有點麻煩。

現在Java的熱部署插件jrebel也收費了,299美元一年,有點貴啊,沒有了熱部署,每次啟動什麼的都要花不少時間,效率也降低了一些。

消息隊列使用的是Redis,Redis做隊列,消息的删除都要手動操作,消費失敗也要在用戶端進行控制。如果不使用專門的MQ軟體,自己就要多處理一點東西啊。

在公司開發有一定的流程,也有權限,如果很多東西都沒有權限操作的話,那麼其實自己就要自己成長了。

先充實自己吧,有空多看書,技術也要成長。

  • 項目做完寫文檔
  • 專門的人做專門的事
  • 做的時候配置挺多的
上一篇: 一周總結