Posts

Showing posts from June, 2022

干翻 nio ,王炸 io_uring 来了 ,史上最详细说明及最全图解!!

Image
大趋势:全链路异步化,性能提升10倍+ 随着业务的发展,微服务应用的流量越来越大,使用到的资源也越来越多。 在微服务架构下,大量的应用都是 SpringCloud 分布式架构,这种架构总体上是 全链路同步模式 。 全链路同步模式 不仅造成了资源的极大浪费,并且在流量发生激增波动的时候,受制于系统资源而无法快速的扩容。 全球后疫情时代,降本增效是大背景。如何降本增效?一条好的路径: 全链路同步模式  ,升级为  全链路异步模式 。 全链路异步模式 改造 具体的内容,请参考尼恩的深度文章: 全链路异步,让你的 SpringCloud 性能优化10倍+ 先回顾一下全链路同步模式架构图 全链路同步模式  ,如何升级为  全链路异步模式 , 就是一个一个 环节的异步化。 40岁老架构师尼恩,持续深化自己的3高架构知识宇宙,当然首先要去完成一次牛逼的 全链路异步模式 微服务实操,下面是尼恩的实操过程、效果、压测数据(性能足足提升10倍多)。 全链路异步模式 改造 具体的内容,请参考尼恩的深度文章: 全链路异步,让你的 SpringCloud 性能优化10倍+ 并且,上面的文章,作为尼恩 全链路异步的架构知识,收录在《 尼恩Java面试宝典 》V52版的架构专题中 注:本文以 PDF 持续更新,最新尼恩 架构笔记、面试题 的PDF文件,请从这里获取: 语雀 或者 码云 全链路异步化的最终目标 全链路异步化的最终目标,如下图所示: 应用层:编程模型的异步化 框架层:IO线程的异步化 OS层:IO模型的异步化 一:应用层:编程模型的异步化 这个请大家去看 尼恩的 《 响应式 圣经 PDF 》电子书 随着 云原生时代的到来, 底层的 组件编程 越来越 响应式、流化, 从命令式 编程转换到 响应式 编程,在非常多的场景 ,是大势所趋。 而响应式编程, 学习曲线很大, 大家需要多看,多实操。 二:框架层:IO线程的异步化 这个大家 都选择 具有异步 回调功能的 异步线程模型,如 Reactor 线程模型 这个是面试的绝对重点 IO的王者组件,Netty框架,整体就是一个 Reactor 线程模型 实现 也是非常核心的知识,这里不做展开,请大家去看尼恩的畅销书《Java 高并发核心编程卷 1 加强版》。 三:OS层:IO模型的异步化 目前的一个最大难题,...

利用Cloudflare等免费CDN翻墙的科学上网方法 — V2Ray Cloudflare

Image
上次写了 V2Ray 之后,我又发现另一个现象。 防火墙把很多经常被用比搭梯子或机场的 VPS 供应商的服务器也封了,导致连最基本连接 SSH 都不行,什至连本身行运行的好好的服务器都停工了,那该怎么办呢? 最后我找到一个最优解 — — CDN。 用这个方法什至可以把已经宣布死亡的服务器,起死回生! 付出的代价就是在 Ping Time 速度上会有一点点的下降,整体的速度还是可以的。  重点是Cloudflare这个CDN服务是免费的。  当然不一定是 V2Ray Cloudflare 的,如果你有经验的话,也可以是 V2Ray CDN (其他 CDN 什至国内的都可以)。 还没有试过 V2Ray 的朋友,可以先去试试看。 大量Shadowsocks被封的另一出路——V2Ray新晋翻墙工具架设教学 这个方法需要用到以下的东西: Cloudflare 账户 域名 Vultr VPS 服务器 30分钟的时间 一颗折腾的心 这个教程我会用一个「死掉」的 VPS 来做例子,可以看到我 「站长之家」 的 Ping 工具检测的结果,是已经死得不能再死啦,没有一个地方 Ping 得动,我们来看看怎么把它起死回生! 如果自己还没有 VPS 的话,可以 先看这篇文章,自己先去建一个。 连结域名和Cloudflare 购买域名 没有域名的朋友,可以先去 Namecheap 买一个最便宜的域名,我看到最便宜的是「. xyz」一年才 1 美元的价格。 没有域名的话,这个方法是用不了的哦。 Namecheap教学 — USD$1一年的顶级域名? 注册Cloudflare 到  https://dash.cloudflare.com/sign-up  注册一个免费账号,过程很简单我就不再详说了。 注册完之后,它应该会问你填一个域名,我们就把刚买到的域名填进去。 如果还是不知道怎么做的话,可以参考这里: https://seafoodholdhand.com/lnmp-wordpress-tutorial-in-1-hour-nginx-教学/#注冊_Cloudflare_CDN 停用 Proxy 完成连接后,点 DNS 你大概会看到差不的画面。 开始下一步之前,把那个「橙色云」点一下变成「灰色云」。 安装 V2Ray + WebSocket + TLS 先...

VSCode 设置 SOCKS5 代理的几种方法

Image
VSCode 本身有代理设置界面,但是你会发现,它只支持 HTTP 和 HTTPS 的代理,却不支持我们想要的 SOCKS5 代理,怎么办呢?搜索了一下,发现还是可以使用 SOCKS5 代理的,只是需要稍微迂回一下。 VSCode 的官网帮助文档里有明确的说明,VSCode 使用的是 Chromium 的通信模块。所以,可以像 Chromium 浏览器一样,启动时附带命令行参数(command-line flags),而我们需要的 SOCKS5 代理设置正好可以通过命令行参数来实现。命令行参数写法可参照 Chromium 官方文档:  Configuring a SOCKS proxy server in Chrome 。 Chromium 官方文档里是这么说的: To configure chrome to proxy traffic through the SOCKS v5 proxy server myproxy:8080, launch chrome with these two command-line flags: --proxy-server = "socks5://myproxy:8080" --host-resolver-rules = "MAP * ~NOTFOUND , EXCLUDE myproxy" 官方文档下面还有详细的说明,这里简单解释下,第一行命令是指定代理,第二行命令是为了防止浏览器发送额外的未经代理的 DNS 请求,把所有的 DNS 请求都禁掉(指向不存在的地址),然后仅放行经由代理的请求。 个人感觉配置 VSCode 的话,仅指定代理就可以了,不需要第二行。所以,依样画葫芦,找到 VSCode 的快捷方式,在 “目标” 一栏,后面加上我们的代理命令行参数就可以了。 --proxy-server="socks5://127.0.0.1:6789" 修改好了,保存设置,启动 VSCode 测试了一下,成功。 但是,有两个问题,其实也不能算问题,两种状况吧,尤其对于有强迫症的人来说,可能有点难受😄。 1、这种使用命令行参数的方式并不是适用于任何情况; 2、要想通过固定在任务栏的 VSCode 图标来启动,那么任务栏的 VSCode 图标会出现重复。 第一种情况,比如,一开...

一文教会你 VSCode如何配置SOCKS5代理

Image
方法一、 编辑器页面无法配置 第一个直接的方法是直接通过VSCode的设置进行配置,但是页面提示需要满足http开头的正则才能正确配置上,这样的方式无法配置成功 通过 VSCode github issue 得知VSCode从未支持过SOCK5方式的代理, 跳转到 Network Connections in VSCode 后, 了解到VSCode使用了Chromium网络通信组件, 因此可以尝试Chromium的代理设置 方法二、命令行参数成功配置SOCKS5 翻阅 Chromium network settings ,Chromium通过启动是增加以下命令行参数实现SOCKS代理设置 1 2 --proxy-server="socks5://myproxy:8080" --host-resolver-rules="MAP * ~NOTFOUND , EXCLUDE myproxy" 因此在本地VSCode快捷方式中目标参数增加以上命令项,即可实现VSCode的SOCKS5代理 1 C://****/Code.exe --proxy-server="socks5://myproxy:8080" --host-resolver-rules="MAP * ~NOTFOUND , EXCLUDE myproxy" -

Envoy vs NGINX vs HAProxy: Why the open source Ambassador API Gateway chose Envoy !

NGINX ,   HAProxy , and   Envoy   are all battle-tested L4 and L7 proxies. So why did we choose Envoy as the core proxy as we developed the   open source Ambassador API Gateway   for applications deployed into Kubernetes? It’s an L7 world In today’s cloud-centric world, business logic is commonly distributed into ephemeral  microservices . These services need to communicate with each other over the network. The core network protocols that are used by these services are so-called “Layer 7” protocols, e.g., HTTP, HTTP/2, gRPC, Kafka, MongoDB, and so forth. These protocols build on top of your typical transport layer protocols such as TCP. Managing and  observing  L7 is crucial to any cloud application, since a large part of application semantics and resiliency are dependent on L7 traffic. The Proxy Battle Ambassador was designed from the beginning for this L7, services-oriented world, with us deciding early on to  build only for Kubernetes . We...

ubuntu 下如何完全卸载 docker

使用 apt-get remove docker-ce 命令卸载 docker-ce 后,运行 docker -v 仍能查到 docker 版本号,说明卸载不够完全。 所以需要同时卸载 docker-ce、docker-ce-cli,一次完成。 $ sudo apt-get remove docker-ce docker-ce-cli ... The following packages will be REMOVED: docker-ce docker-ce-cli ... Removing docker-ce (5:19.03.3~3-0~ubuntu-xenial) ... Removing docker-ce-cli (5:19.03.3~3-0~ubuntu-xenial) ... Processing triggers for man-db (2.7.5-1) ... $ sudo docker -v -bash : /usr/bin/docker: No such file or directory

Linux 各部门目录或者文件夹大小,以及目录下文件大小命令,df/du

Image
1、df 命令 df 可以查看一级文件夹大小、使用比例、档案系统及其挂入点。 查看分区的文件系统:df -T 显示目前所有文件系统的可用空间:df -h 2、du 命令 du 可以查询文件或文件夹的磁盘使用空间。 列出home下面所有一级目录的一级目录文件大小:du -h --max-depth=1 /home/* 一般情况下,使用上面两个命令就够了。

闲置 VPS/小鸡 挂机回血 挂机赚钱 经验分享

Image
分享一下利用闲置VPS挂机回血的经验,能回个本,一般用 住宅 、 校园网IP 挂机可以实现盈利。 注意:挂机不要千万浪费太多精力,挂着就行,按照收益排序,收益高在前(大概)。 一、流量挂机 按平台的流量类型和单价排序。 1. peer2profit ,一个俄罗斯的流量挂机平台,不怎么占用CPU,内存和流量,流量单价较高,不管是VPS还是住宅IP,不管是Windows还中Linux还是手机,都可挂机赚钱( 托管 流量0.3刀/GB, 住宅 或者 校园网 流量0.8刀/GB),无论什么IP都能挂,但最好使用俄罗斯的VPS(一般算 托管 )挂,其他地区的VPS效果可能不是很好。 2. traffmonetizer ,一款欧洲爱沙尼亚的流量挂机项目,类似Peer2profit,10刀提现(Paypal、BTC、Payoneer),注册送5刀,最近出了docker端,VPS可挂。安装好docker后,修改下面代码中的token然后运行就行。以下需要 住宅 或者 校园网IP 挂机,安装官方客户端挂机就行。 3. spider 4. iproyal 5. honeygain 6. earnapp 7. packetstream 下面是平台的详细介绍,其中ISP( Internet Server Provider,Internet服务提供商)就是为用户提供Internet接人和(或)Internet信息服务的公司和机构,一般 家庭宽带,校园网,公司网 属于该类。IDC(Internet Data Center,互联网数据中心),就是电信部门利用已有的互联网通信线路、带宽资源,建立标准化的电信专业级机房环境,为企业、政府提供服务器托管、租用以及相关增值等方面的全方位服务,一般 VPS提供商 就属于这类。 二、刷ptp链接 1.oneptp 1.1.注册广告联盟 oneptp 账号,记得填上自己正确的收款信息 1.2.在oneptp获取广告链接,如下所示 http://www.oneptp.com/ax/?uid=XXXXXXX&ad=1 1.3.点击上面链接就有收益,一个IP最多点一次,多点不算,满0.01元即可提现到支付宝,微信。当然不能人工去点,一般都是用自动流量交换工具挂机点。下面介绍几个自动流量交换工具。 注意 :如果vps没有图形化操作界面,则需要安装Docker;...