服务器一:分布式服务器结构
客户端 ——> 任务服务器 ——> 应用服务器
任务服务器,需有两台或两台以上的任务服务器,心跳机制校验。
应用服务器的负载均衡:
1.任务服务器暴露一个HTTP接口给应用服务器,当应用服务器空闲的时候就到任务服务器里取任务。
2.应用服务器可以暴露一个HTTP协议的接口给任务服务器,任务服务器使用该接口获取应用服务器的CPU,内存,IO等负载相关量是否高,从而决定把任务分配给当前负载低的应用服务器
应用服务器可以根据业务等进行分割
应用服务器 ——> DAL层,数据库服务器 ——> 数据库
应用服务器 ——> Cache层,多个redis
缓存层:
1.为了减轻数据库压力,一些热点数据可以存在缓存数据库中,减少数据库的访问量
2.当修改数据的时候,应用服务器通过DAL层直接修改数据库,然后DAL层会把数据同步到缓存数据库,应用服务器只从缓存数据库中取数据,而不会直接修改它
数据库:
1.当读写操作很多的时候,数据库分为主从数据库,由于业务中很多时候都是读操作比写操作多,因此写功能的数据库比读功能的数据库要少
2.当主数据库被改写之后,需要对从数据进行同步,这时候可以主流数据库的replication机制进行同步。这个机制通过日志文件来工作的
3.当数据库大到一定程度的时候,为了改善数据库并发,需要对数据库进行分区
垂直分库:按照一定的逻辑,把表分散到不同的库中,如用户表一个库,业务表一个库等等
水平分库:把一个库分成N个,每个库都有其他中所有的表,数据平分
服务器性能四大杀手:
1.数据拷贝,可用缓存避免
2.环境切换,主要是线程之间的切换
3.内存分配,可用内存池改进
4.锁竞争,尽量避免
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具