技術棧
前端技術棧
單頁應用:
- Angular或React 或Vue
- 基於推特Bootstrap自適應Web設計
- HTML5 Boilerplate樣板
- 現代瀏覽器相容 (Chrome, FireFox, Microsoft Edge…)
- 完整國際化支援
- 可選的Sass支援
- 基於Sprint websocket元件可選的Websocket支援
優秀的開發工作流:
- 使用NPM安裝最新的JavaScript函式庫
- 使用Webpack建立,最佳化和熱過載
- 基於Jest和Protractor測試
單頁應用不能滿足你的需求?
- 支援 Thymeleaf樣板引擎,在服務端生成Web頁面
後端技術棧
完整的Spring應用:
- 基於Spring Boot提供應用設定
- Maven或Gradle建立,測試,執行應用
- 開發與生產設定檔案分離 (同時支援Maven和Gradle)
- Spring Security元件
- Spring MVC REST + Jackson
- 基於Sprint websocket元件, 可選的Websocket支援
- Spring Data JPA和Bean校驗
- 基於Liquibase資料庫更新
- Elasticsearch支援,如果你需要基於你的資料庫提供高階搜尋能力
- MongoDB和Couchbase 支援, 如果你想使用面向文件的NOSQL資料庫替代JPA
- Cassandra支援, 如果你想使用面向列的NOSQL資料庫替代JPA
- Kafka支援, 如果你需要一個訊息發布訂閱系統
微服務技術棧
微服務是可選的,但完全支援:
- HTTP路由使用Spring Cloud Gateway
- 基於Netflix Eureka或 HashiCorp Consul的服務發現
適應生產環境:
- 使用Metrics和ELK Stack監控
- 使用ehcache(本地快取), Caffeine (本地快取), Hazelcast、 Infinispan、 Memcached 或者 Redis提供快取
- 靜態資源最佳化 (gzip filter, HTTP cache headers)
- 使用Logback管理日誌,可在執行時設定日誌輸出
- 使用HikariCP連線函式庫帶來極致的效能提升
- 建立標準WAR檔案或者可執行的JAR檔案
- 完整的Docker和Docker Compose支援
- 支援所有主流的雲服務提供商: AWS, Cloud Foundry, GCP, Heroku, Kubernetes, OpenShift, Azure, Docker…