架构设计

博友圈 v2 版本技术架构

博友圈 v1 版本(源码:boyouquan)是一个集前后端为一体的 Java 应用程序,其使用 Maven 管理,使用了 Spring Boot + Thymeleaf + MyBatis 技术,其中 Thymeleaf 负责页面渲染。

而本次改造后的 v2 版本(前端源码:boyouquan-ui,后端源码:boyouquan-api)则将博友圈单体项目进行了前后端分离。前端使用了 React 框架;后端依然使用 Spring Boot + MyBatis 框架,但去除了 Thymeleaf 渲染页面的部分,使得后端变为了一个纯净的 REST API 提供者。

本文即重点介绍一下博友圈 v2 版本的前端、后端技术架构,以及部署架构。

阅读更多

什么是 OWASP Top 10?

OWASP(Open Worldwide Application Security Project,开放全球应用程序安全项目)是一个致力于提高软件安全性的非营利性组织,其提供 Web 应用程序安全领域的标准、工具和指导手册,被业界大量的企业作为权威来参考。

阅读更多

Selenium 自动化测试最佳实践

前两篇文章「Selenium WebDriver 基础使用」和「Selenium WebDriver 高级特性使用」分别介绍了 Selenium WebDriver 的基础功能和高级功能的使用。这两篇文章更多的是从底层实现细节的角度去练习 Selenium WebDriver API 的使用。

阅读更多

5 种常用的云迁移方法及其优缺点

云迁移是将数字系统的一部分或全部迁移到云上的过程。主要有三种迁移方向:On-Premise 到云、云到云以及云到 On-Premise。 在进行迁移时,主要有 5 种方法或策略可以选择。如下为 Gartner 于 2011 年定义的“5 Rs”迁移方法:

阅读更多

API Gateway与Service Mesh有什么不同?

一般的认为是:API Gateway用来处理南北向流量,Service Mesh用来处理东西向流量。这样的区分方式并不准确。下面会递进式分析两者的使用场景及异同点,以期通过本文可以明白何时使用API Gateway,何时使用Service Mesh?

阅读更多