
架构
文章平均质量分 79
一些架构方面的个人见解,没有高低的架构,都根据其场景而有。
菜鸟厚非
一枚跨平台技术爱好者,追求对新技术的掌握和最佳解决方案的搜寻。
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Windows Docker 部署 Kong 网关
Kong Gateway 有开源免费版和企业版,两个不同的版本。当前企业版有些功能是需要收费的,今天这里部署的是开源免费版本 3.6.x 系列。两个版本之间的区别,请见。原创 2024-03-18 08:00:00 · 27653 阅读 · 0 评论 -
Nginx 可视化管理软件 NginxProxyManager
Proxy Host是通常用作 web 服务的转发,UI 界面可以配置一对一的场景,LB 场景通过 UI 界面没有支持到可配置。Stream一个相对较新的 Nginx 功能,流将用于转发 TCP/UDP 流量直接到网络上的另一台计算机。如果运行的是游戏服务器、FTP 或 SSH 服务器等,那么就会派上用场。不足的是,也只有一对一的场景。是将来自传入的一个域名请求,跳转到另外一个域名。原创 2024-03-06 08:00:00 · 68633 阅读 · 0 评论 -
一款免费的 SSL 工具 Certify The Web
Certify The Web 适用于 Windows的SSL 证书管理器用户界面,与所有 ACME v2 CA 兼容,为您的 IIS/Windows 服务器轻松地安装和自动更新来自 Letencrypt.org 和其他 ACME 证书授权机构的免费 SSL/TLS 证书,设置 https 从未如此简单。原创 2023-08-21 21:45:34 · 14710 阅读 · 0 评论 -
BaGet一款开源的NuGet服务器
BaGet (发音为“baguette”) 是一个轻量级的 NuGet、Symbol 服务器。它是开源的、跨平台的和云化的,可以运行再自己得电脑、Docker、Azure、AWS、Google Cloud 、Alibaba Cloud (Aliyun) 等。支持 MySQL、SQLite:、SqlServer、PostgreSQL、Azure Table Storage 这些数据存储方式。原创 2022-11-19 11:34:03 · 20548 阅读 · 0 评论 -
来,从零手写一个IOC容器
IOC(控制翻转)是程序设计的一种思想,其本质就是上端对象不能直接依赖于下端对象,要是依赖的话就要通过抽象来依赖。原创 2022-06-14 19:18:06 · 28997 阅读 · 4 评论 -
基于Nuget.Server搭建私有包服务器
搭建流程一、Framework 版1. 新建项目新建 Framework 版的 ASP.NET Web 应用程序2. 安装依赖安装 nuget.server package3. 启动项目启动发下运行错,语言是 web.config 配置文件重复,删除一个即可。再次启动程序,运行正常4. 发布程序发布新建 IIS 站点访问,出现错误,服务器缺少对应版本的 Framework 下载 官网,安装完成后服务器需重启访问 http://1原创 2021-05-26 16:18:43 · 9799 阅读 · 0 评论 -
.NET Core 模板项目 - Local
.NET Core项目模板https://www.cnblogs.com/catcher1994/p/10061470.html原创 2021-07-01 19:42:14 · 1647 阅读 · 0 评论 -
NET Core 模板项目 - NuGet
NET Core项目模板https://www.cnblogs.com/catcher1994/p/10061470.htmlhttps://blog.csdn.net/asxza28042/article/details/101390136原创 2021-07-02 11:14:54 · 13982 阅读 · 0 评论 -
详谈为什么互联网公司严禁使用自增主键
三个问题大表为什么不能用自增主键?UUID 是好的替代方案吗?SnowFlake 雪花算法是什么?自增主键自增主键是数据库根据插入数据库行,按顺序自动赋予的一个连续的值,如下:(id int auto_increment)这种形式的主键本身是没有什么问题的,在学校做个毕业设计或者在创业型公司使用是没什么问题的。但是你是在大型公司(淘宝、京东等电商项目)分布式情况下使用是有严重问题的。接下来我们进行分析案例:如下有个商品表,里面有三亿数据,数据库表有三个分片假设我们按照自增主键方式原创 2021-09-05 17:08:05 · 16462 阅读 · 15 评论 -
.Net Core 雪花算法实操
NuGet安装 Snowflake.Core 依赖包使用IdWorker 应该以单实例模式运行,否则会出现重复Id。 class Program { static void Main(string[] args) { var worker = new IdWorker(1, 1); for (int i = 0; i < 10000000; i++) {原创 2021-09-11 22:01:41 · 7798 阅读 · 0 评论 -
详谈 2PC 3PC
一致性问题分布式系统中,为了保证数据的高可用。通常,会将数据保留多个副本放置在不同的物理的机器上。为了保证正确的增、删、改、操作,还需要保证这些放置在不同物理机器上的副本数据是一致的。为了这样的分布式一致性问题,前人在性能和数据一致性衡过程中总结了许多典型的协议和算法。比较著名的有二阶提交协议(2PC)、三阶提交协议(3PC)。分布式事务分布式事务是指涉及到操作多个数据库的事务,目的是为了保证分布式系统中的数据一致性。分布式事务处理的关键是必须有一种方法可以知道事务在任何地方所做的所有动作,提交或原创 2021-08-11 14:22:27 · 7425 阅读 · 0 评论 -
详谈为什么架构设计禁止 IP 直连
首先两个问题IP直连有什么问题?怎么解决IP直连的问题?什么是 IP 直连看下面两个连接,一个连接字符串一个访问地址jdbc:mysql://202.99.183.21:3306/dbhttp://192.168.31.205/webapp这个两个链接被 A、B、C等程序依赖,这样有什么缺点问题呢1 . 强耦合如下图,应用程序链接在 192.168.31.102 服务器的 MySQL某一天业务量增加,102 服务器配置过低,考虑将 MySQL 迁移到 103 服务器。此时所有原创 2021-09-05 22:50:20 · 13828 阅读 · 17 评论 -
聊一聊微服务之间的通讯方式
介绍服务调用与事件驱动属于微服务调间用的两种方式,常规上可以看做是同步与异步。其两种方式会应用于不同的场景。同步,属于直接调用,适用于处理并发不高,且需要另一个服务调用结果场景。异步,属于事件驱动方式,适用于处理并发较高场景,可以达到解耦、削峰、异常隔离、提高吞吐量等。...原创 2021-08-12 13:29:39 · 19010 阅读 · 18 评论 -
详谈 乐观锁 悲观锁
介绍望文生义,乐观锁对应于生活中乐观的人总是想着事情往好的方向发展,悲观锁对应于生活中悲观的人总是想着事情往坏的方向发展。这两种人各有优缺点,不能不以场景而定是好是坏。悲观所共享资源每次只给一个线程使用,其它线程阻塞,用完后再把资源转让给其它线程。关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做操作之前先上锁。白话理解:总是假设最坏的情况,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会阻塞直到它拿到锁乐观锁每次原创 2021-08-11 18:19:15 · 13289 阅读 · 0 评论 -
详谈为什么互联网公司需要垂直分表
垂直分表垂直分表则是代表将一张大表按“列”拆分为 2 张以上的小表,通过主外键关联来获取数据。为什么需要垂直分表一张表上百个字段,在很多年前做一些项目中,可能习以为常。应为以前项目的数据体量并大,怎样查都不会有太大的性能问题。随着项目体量数据越来越大,尤其是在互联网大厂,查询等方面会有各方面的性能问题,所以现在必须进行拆分。<>在进行垂直分表前,我们需要了解什么是水平分表。...原创 2021-09-05 16:03:30 · 14056 阅读 · 18 评论 -
详谈为什么互联网公司禁用外键约束
禁用外键约束是什么不得使用外键与级联,一切外键概念必须在应用层解决。为什么禁用外键约束首先,假设我们用了数据库约束外键,每次做 DELETE 或者 UPDATE 都必须考虑外键约束,会导致开发的时候很痛苦,测试数据极为不方便。如果测试或者开发时我们需要删除某个表的数据,如果此时使用了外键约束与此表有十几个关联,那岂不是要炸毛了。当然这是使用层面带来的麻烦。当然使用外键约束也有优点,保证数据的完整性和一致性、级联操作方便、数据一致性交给数据库、代码量小。任何事情都会有利有弊。接下来我们通过案例进原创 2021-09-05 23:45:40 · 15123 阅读 · 9 评论 -
详谈布隆过滤器在亿级流量电商系统的应用
详谈布隆过滤器在亿级流量电商系统的应用原创 2021-09-06 16:04:32 · 13475 阅读 · 2 评论 -
详谈为什么互联网公司离不开容器化
物理机虚拟机容器化原创 2021-09-14 18:05:52 · 17651 阅读 · 10 评论 -
详谈为什么互联网公司禁止使用存储过程
【强制】禁止使用存储过程,存储过程难以调试和扩展,更没有移值性。其实这一句话足以说明问题,有小伙伴肯定会疑惑,在银行或者证券等公司工作为什么会大量使用存储过程呢?这就是我们今天讲解的内容首先两个问题1 . 为什么银行都在用存储过程2 . 存储过程为什么成为互联网弃子像银行这类系统,通常会采用商用的数据库 Oracle、DB2 等,应为这些供应商有着完整的解决方案,可以帮助银行规避大量的风险。银行的一些外围业务会使用一些国产的分布式数据库或者 MySQL 这样开源的数据库。银行是以数据.原创 2021-09-16 11:27:04 · 17564 阅读 · 13 评论