架构设计
文章平均质量分 80
xixingzhe2
代码开发爱好者
展开
-
Reactor简述
Reactor是一个计算机编程模式,它在并发编程和网络编程中用于处理大量并发输入事件。在该模型中,一个中心调度组件(即Reactor)负责监听和分发来自多个客户端的事件到相应的处理器或回调函数。当有事件发生时,如网络连接请求、数据到达等,Reactor能够及时响应并高效地将这些事件分配给适当的处理逻辑进行执行。原创 2024-01-30 16:57:13 · 1130 阅读 · 0 评论 -
APP升级
APP升级分为两种类型。原创 2023-10-29 13:52:13 · 300 阅读 · 0 评论 -
数据-OLTP、OLAP
数据仓库中的OLAP和OLTP是两种不同的数据处理方式,分别以数据分析和实时事务处理为核心。了解它们的区别有助于我们更好地选择合适的处理方式,并且在实际应用中可以发挥它们的优势。简单谈谈OLTP,OLAP和列存储的概念-腾讯云开发者社区-腾讯云百度安全验证。原创 2023-10-20 14:43:18 · 697 阅读 · 0 评论 -
架构-设计原则
SOLID是5个设计原则开头字母的缩写,其本身就有“稳定的”的意思,寓意是“遵从SOLID原则可以建立稳定、灵活、健壮的系统”。Single Responsibility Principle(SRP):单一职责原则。一个类,只做一件事,并把这件事做好,其只有一个引起它变化的原因。Open Close Principle(OCP):开闭原则。Liskov Substitution Principle(LSP):里氏替换原则。原创 2023-10-16 15:44:07 · 496 阅读 · 0 评论 -
Nginx替代产品-Tengine健康检测
Tengine默认将安装在/usr/local/nginx目录。你可以用'--prefix'来指定你想要的安装目录。该模块可以为Tengine提供主动式后端服务器健康检查的功能。以上面的配置为例,有两台服务器,分别为。从负载均衡池中摘除,不再将流量分发到该节点。从故障状态中恢复,重新将流量分发到该节点。该指令可以打开后端服务器的健康检查功能。的故障已经修复,连续成功次数达到了。指定的成功次数2次,NGINX会将。出现故障,连续失败的时间超过了。指定的次数5秒,NGINX会将。从负载均衡池中摘除后的操作。原创 2023-09-17 16:49:03 · 741 阅读 · 1 评论 -
服务器巡检表-监控指标
如果Redis使用的内存超过了系统所能提供的内存大小,就会触发操作系统的内存换页机制,从而导致性能下降。当Redis的内存使用量接近最大内存限制时,Redis会触发内存淘汰机制,将一些不常访问的数据从内存中淘汰出去,以释放内存空间。然而,如果服务器的资源有限,或者遇到大量并发请求,可能会导致连接数过高,从而影响服务器的性能和稳定性。G1 Survivor Space (heap):新生代Survivor 区堆内存使用情况,对象年代提升情况,通过对该区的内存使用监控,可以防止应用出现“过早提升”问题。原创 2023-09-08 09:56:53 · 976 阅读 · 0 评论 -
线上刷数据
刷数据原创 2022-06-10 11:19:26 · 129 阅读 · 0 评论 -
字典表与枚举类关系
1、适合场景1.1 枚举类适合简单、固定字段。1.2 字典表适合大型、需维护字段。1.3 都要遵循的原则字典、枚举值是不可修改的,因为字典、枚举通常会和具体代码实现紧密耦合。如果一定要进行修改话需要考虑到对代码的影响以及如何保证修改之后系统正常工作。 字典表如果被频繁访问,可以将数据放入缓存中。如果字典表被修改被修改,需要考虑一致性问题。2、字典表设计CREATE TABLE `sys_dict_type` ( `id` bigint(20) NOT NULL, `原创 2021-11-09 13:37:17 · 2834 阅读 · 0 评论 -
idea 测试覆盖率
1、编写类package com.jacoco;/** * @author ybwei * @Description * @date 2021/8/31 13:27 **/public class Add { public int add(int a, int b) { if (a == 20) { return 20; } return a + b; }}自行生成Test类快捷键,ctrl+s原创 2021-09-02 20:32:30 · 8195 阅读 · 0 评论 -
服务降级、熔断、限流
1、概念1.1 降级服务降级处理是在客户端实现完成的,与服务端没有关系。 当服务器压力剧增的情况下,根据当前业务情况及流量对一些服务和页面有策略的降级,以此释放服务器资源以保证核心任务的正常运行。降级的思想是丢车保帅。1.1.1 常见降级:服务接口拒绝服务:页面能访问,但是添加删除提示服务器繁忙。页面内容也可在Varnish或CDN内获取。 页面拒绝服务:页面提示由于服务繁忙此服务暂停。跳转到varnish或nginx的一个静态页面。 延迟持久化:页面访问照常,但是涉及记录变更,会...原创 2021-02-19 16:21:06 · 3679 阅读 · 2 评论 -
从架构演进的角度聊聊 Spring Cloud 都做了些什么?
开发十年,就只剩下这套Java开发体系了 >>> 引用作者:纯洁的微笑Spring Cloud作为一套微服务治理的框架,几乎考虑到了微服务治理的方方面面,之前也写过一些关于Spring Cloud文章,主要偏重各组件的使用,本次分享主要解答这两个问题:Spring Cloud在微服务的架构中都做了哪些事情?Spring Cloud提供的这些功能对微服务的架构提供...原创 2017-11-02 10:45:00 · 133 阅读 · 0 评论 -
分布式系统CAP和Base
1、分布式系统1.1 简介由多台计算机和通信的软件组件通过计算机网络连接(本地网络或广域网)组成。分布式系统是建立在网络之上的软件系统。正是因为软件的特性,所以分布式系统具有高度的内聚性和透明性。因此,网络和分布式系统之间的区别更多的在于高层软件(特别是操作系统),而不是硬件。分布式系统可以应用在在不同的平台上如:Pc、工作站、局域网和广域网上等。1.2 分布式系统和集群...原创 2018-06-21 13:46:00 · 398 阅读 · 1 评论 -
Openapi 接口设计思路
开发十年,就只剩下这套Java开发体系了 >>> Open API即开放API,也称开放平台。 所谓的开放API(OpenAPI)是服务型网站常见的一种应用,网站的服务商将自己的网站服务封装成一系列API(Application Programming Interface,应用编程接口)开放出去,供第三方开发者使用,这种行为就叫做开放网站的API,所开放的API就...原创 2018-05-07 10:50:00 · 13117 阅读 · 0 评论 -
简单spring cloud服务升级实现
1、升级原则隔离性:v1升级到v2时,相互独立,互不不干扰。 稳定性:服务不停止,完成升级。接口保持畅通。2、具体实现2.1 eureka项目搭建eureka,网上很多,就省略了。2.2 feign接口项目2.2.1 依赖<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://w...原创 2019-01-14 16:32:49 · 1310 阅读 · 0 评论 -
软件版本命名规范
1、版本命名规范1.2.3.20190114_rc由四部分组成第一位(1):主版本号。当功能模块有较大的变动,比如增加多个模块或者整体架构发生变化。此版本号由项目决定是否修改。 第二位(2):子版本号。当功能有一定的增加或变化,比如增加了对权限控制、增加自定义视图等功能。此版本号由项目决定是否修改。 第三位(3):修订版本号。一般是 Bug 修复或是一些小的变动,要经常发布修订版...原创 2019-01-14 17:16:26 · 3189 阅读 · 1 评论 -
讲讲亿级PV的负载均衡架构!
引言本来没想写这个题材的,为了某某童鞋能够更好的茁壮成长,临时写一篇负载均衡的。负载均衡,大家可能听过什么3层负载均衡、4层负载均衡、7层负载均衡什么的?那这是怎么分的呢,ok,是根据osi七层网络模型来分的,例如nginx是工作在应用层,应用层刚好是在第7层,因此nginx又可以称为7层负载均衡。我本来想一层层慢慢讲,从最基础的网络协议开始讲起,想了想又觉得这种讲法不适合速成。因此我改变思...转载 2019-02-11 14:23:45 · 243 阅读 · 0 评论 -
app接口设计不同版本管理
开发十年,就只剩下这套Java开发体系了 >>> 1 设计原因 APP接口的开发不同于PC WEB的开发,APP会经常的版本迭代,不同版本的APP接口可以同时使用,老版本的APP和新版APP可以同时使用,为了便于维护和管理,就有必要设计好APP接口的管理策略。2 数据库及接口设计 数据库包含字段:app版本号、更新内容、是否强制更新。...原创 2017-12-29 15:37:00 · 2202 阅读 · 0 评论