技术类笔记,在往全栈的路上努力奋斗,主攻java,擅长微服务。前端方面熟悉vue3,ts,uniapp,原生安卓。对设计模式有所了解,正在恶补数据结构和算法
Redis提供的数据结构可以处理许多复杂的业务场景,本专栏记录多种业务解决方案,尤其是高并发下的业务场景,例如文章阅读量、画像去重、短链接……
MySQL是目前IT行业最流行的开源数据库管理系统,本栏目记录数据库设计思想、设计方式以及常见问题及解决方案,还包括主从数据库的搭建等
使用本框架开发Web应用,是业内进行技术选型的不二之选,其庞大的生态体系能找到近乎所有的业务解决方案,并大大加快了接口的开发速度
主要是指以SpringCloud技术栈为核心的分布式解决方案,包含注册中心、配置中心、服务容错、限流与降级、分布式任务调度、远程调用等等
以软件工程学科为基础,架构师为目标进行架构设计,尝试从架构师的角度去看待问题,跳出软件工程师的视野,从业务、团队的综合角度谈架构
Java工程师往往是最需要掌握算法的人,掌握数据结构理论基础才能更好的将业务抽离出来,而算法则是锻炼我们抽象问题与解决问题的能力
对接国内支付宝支付与微信支付,微信支付采用v3接口,并对支付功能进行抽象封装,大量使用接口回调等技巧,设计并实现支付功能的封装
单体架构
最开始使用servlet开发网页,以jsp和ajax技术为主导开发。后来以spring生态体系为核心进行开发,采用前后端分离的开发方式,整合前端框架能快速构建出一套完整的应用。
集群架构
一种对分布式的探索,在这一阶段就已经出现分库分表、异地容灾等分布式组件,主要是使用Nginx服务器代理转发请求,分发到不同服务器来实现负载均衡,可惜不够灵活。
分布式与容器化
当前业界最主流的方式,将功能拆分成多个微服务,优点在于能够灵活部署、合理分配系统资源;缺点是运维部署更加复杂,因此采用容器化部署+容器化编排减少运维成本。