- 博客(194)
- 资源 (3)
- 收藏
- 关注
原创 XZ Utils backdoor(2024.03.29 发现)
攻击者JiaT75 (Jia Tan,github 账号已经被关停)于 2021 年注册了 GitHub 账号,之后积极参与 xz-utils 的维护,积极贡献。获得了 commit 代码的权利。JiaT75 在最近的一次 commit code 时,故意加入了和两个看起来并不起眼的测试用二进制数据。但是在编译脚本中,在特定条件下会从这两个文件中读取内容对项目编译结果进行修改,致使编译结果和公开的源代码不同。目前。
2024-03-31 11:31:35 379
原创 Kubernetes Gateway API 介绍
客户端想要访问部署在 Kubernetes 集群中的服务时, 需要将集群内的服务暴露出来,最常用的方式就是通过 NodePort 或 LoadBalancer 类型的 Service。同时,由于 Ingress API 只定义了有限的内容,它的表现力不够,为了满足不同场景下的需求,各个 Ingress controller 实现的时候,只好通过创建自己的 CRD(Custom Resource Definition)或者通过为 Ingress 资源增加 annotations 的方式来实现对应的需求。
2024-03-28 21:03:19 643
原创 Windows 安装 Graalvm 环境(JDK 22)
系统:Windows 11官方参考指南:https://www.graalvm.org/jdk22/docs/getting-started/windows/
2024-03-20 22:48:42 275
原创 Xds (eXtensible Discovery Service)理解
这里简单介绍一下 envoy :是一个高性能、可扩展的开源代理和通信中间件,由 Lyft 公司开发并贡献给 CNCF(Cloud Native Computing Foundation)。它被设计用于支持现代的云原生应用架构,并提供可靠的服务发现、负载均衡、流量管理和安全性等功能。(来自 gpt)envoy 同 nginx 类似。Istio 是一个开源的、可扩展的服务网格平台,用于解决微服务架构中的通信、安全性、可观察性和流量管理等。
2024-01-29 21:58:41 741
原创 杂记:使用 mac 和 windows 以及编辑器的总结
Grammarly 语法检查DM Integration Module idm 下载扩展JSON Formatter json 格式化查看油猴 任意网站都可以使用的脚本管理工具。
2024-01-14 14:30:48 1327
原创 Nginx 配置一级和二级证书以及作为静态资源服务器
卷挂载中的 ssl 证书替换为自己 ssl 证书的位置。关于 nginx *.conf 配置文件不过多描述!
2024-01-12 22:23:31 497
原创 Docker Compose 部署 jenkins
浏览器访问 8345 端口,稍等 jenkins 加载完成的时候,浏览器页面会自动刷新!安装浏览器提示,找到root 密码,配置 jenkins。安装推荐的 jenkins 插件;
2024-01-11 20:50:44 933
原创 Github Actions 推送代码构建 Docker 镜像并 push 到仓库
Aliyun AKC 服务 https://cr.console.aliyun.com/Docker hub 官方 https://hub.docker.com/私有的 Harbor 服务 https://goharbor.io/
2024-01-11 20:38:43 984
原创 服务器配置 ssh 连接登录
放置到 ~/.ssh 目录下,在 config 中加入配置,使用 ssh root@ip 登录。目录下看到两个文件,即刚生成的私钥。如果不需要其他设置,一直回车。ssh root@ip 登录。(具体名称取决于你的命名)将公钥文件上传到服务器。
2023-11-28 16:25:43 368
原创 Censot 使用 yum 报错(虚拟机安装第一次 yum install 时):Could not resolve host: mirrorlist.centos.org
【代码】Censot 使用 yum 报错(虚拟机安装第一次 yum install 时):Could not resolve host: mirrorlist.centos.org。
2023-11-04 15:57:28 84
原创 ubuntu 22.04 minikube 部署 应用测试
参考:https://blog.csdn.net/qq_52397471/article/details/133979727?
2023-10-22 23:47:43 265
原创 ubuntu server 22.04安装 minikube
Vmware 虚拟机中安装 Ubuntu 22.04 server,完成系统的基本配置。
2023-10-22 23:13:49 376
原创 ubuntu 设置和取消代理
因为国内环境限制,在 linux 上安装一些软件的时候,因为限制就安装不了, 此时就可以通过设置代理的方式来规避这种问题,下面是具体的设置方式。
2023-10-22 22:40:32 1526
原创 云原生简介 (Cloud Native)
云原生的概念诞生于10年前,netflix 在 AWS 上的一次演讲中。有趣的是当初没有明确的定义,现在也没有明确的定义,对不同的人来说,有不同的概念。
2023-08-30 22:19:33 1059
原创 Github 博客搭建
下载最新的 Fluid Release 版本 url:https://github.com/fluid-dev/hexo-theme-fluid/releases。在 source/_post/test 中放一张图片,之后修改 test.md 文章内容如下。,打开这个配置是为了在生成文章的时候生成一个同名的资源目录用于存放图片文件。通过之前的步骤,相信你已经可以访问到你的 blog 了,当然页面非常。推送根目录下的 public 目录到 github 仓库中,访问即可!如下修改 Hexo 博客目录中的。
2023-08-23 21:46:47 1191
原创 测试驱动开发(TDD)
Kent Beck 的著作《测试驱动开发》中说:“测试驱动开发不是一种测试技术。它是一种分析技术、设计技术,更是一种组织所有开发活动的技术”。由此可看:TDD 不是一种简单的通过单元测试来驱动代码的开发,然后在优化内部代码逻辑的方法,而是一种有机的技术结合。将问题分析成为一个个可操作的任务模块。测试驱动代码的设计和功能实现,然后驱动代码的重构。持续改善海马。文章在理论层次上总结了 TDD ,TDD 的概念和开发方式,并没有提供示例去演示,仅仅作为一个文章总结。
2023-08-22 23:15:49 757
原创 防御性编程(Defensive programming)
是的一种具体体现,它是为了保证,对程序的不可预见的使用,不会造成程序功能上的损坏。它可以被看作是为了减少或消除效力的想法。防御式编程主要用于可能被滥用,恶作剧或无意地造成灾难性影响的程序上。系统的安全性越来越重要,随着互联网技术逐渐渗透到各行各业,每一个细小的问题被放大足以影响到各行各业,对经济和生活造成重大影响。值得注意的是,过度的防御性编程可能会预防不可能会发生的错误,这样将导致运行时间与维护的损耗。当源码中拥有过多异常捕捉和异常处理,这有可能导致结果不正确或者被隐藏。
2023-08-22 22:22:15 338
原创 Ribbon 源码分析
断点 LoadBalancerInterceptor实现了接口,重写了其中的intercept方法,用来拦截请求;获取原始的 uri 和 服务名,调用中的execute方法;追踪的实现这里根据上面传入的服务名字作为服务的ID去获取负载均衡器;再根据负载均衡器去选择服务实例,继续执行execute方法。追踪方法进入方法追踪这里调用IRule接口的choose方法选择服务实例;进入rule的choose方法。查看IRuleIRule到此为止,就走完了整个 ribbon 的负载均衡流程,发起服务调用。
2023-08-18 22:50:43 737
原创 第一个 OpenResty 程序【OpenResty HelloWolrd】
本篇文章将说明如何使用 OpenResty 运行helloWorld。
2023-08-16 15:56:11 97
原创 Install And Understand APISIX(Master the knowledge of APISIX)
apache-apisix-java-runner:可以理解为 APISIX 和 java 语言之间的一个桥梁,通过 java runner 可以把 java 编写的代码直接应用到 APISIX 的插件开发中,为 java 语言的开发者使用 APISIX 提供了便利。
2023-08-14 18:11:58 362
原创 Failed to connect to raw.githubusercontent.com port 443 after 2 ms: Connection refused
参考:https://stackoverflow.com/questions/74794022/curl-28-failed-to-connect-to-raw-githubusercontent-com-port-443-connection-t。常出现在 ubuntu 需要通过请求某个脚本执行安装命令时。
2023-08-10 16:27:39 552
原创 关于微服务治理的一些理解
其主要目的还是为了解耦,提高灵活性和可扩展性!参考:https://zhuanlan.zhihu.com/p/462078779。
2023-07-05 16:54:03 842
原创 Graalvm Native Image 元数据适配
GraalVM:是一种高性能运行时,可显着提高应用程序性能和效率,是微服务的理想选择。它专为使用 Java、JavaScript、基于 LLVM 的语言(例如 C 和 C++)以及其他动态语言编写的应用程序而设计。它消除了编程语言之间的隔离,并在共享运行时实现了互操作性。它可以独立运行,也可以在 OpenJDK、Node.js 或 Oracle 数据库的上下文中运行。Graalvm 主要涉及到 VmWare,RedHat 和 Oracle Labs 三家。
2023-06-27 11:58:16 631
原创 Spring MVC 请求流程分析
DispatchServlet -> HandlerAdapter,HandlerAdapter 将会把处理器包装为适配器,从而支持多种类型的处理器,即适配器设计模式的应用,从而很容易支持很多类型的处理器。用户发送请求 -> DispatchServlet,前端控制器收到请求后自己不进行处理,而是委托给其他的解析器进行处理,作为统一的访问点,进行全局的流程控制。View渲染,View会根据传进来的Model模型数据进行渲染,此处的Model实际是一个Map数据结构,因此很容易支持其他视图技术。
2023-05-09 15:58:52 88
原创 GRPC - JAVA笔记
由google开源的一个高性能的RPc框架,由google内部的Stubby框架演化而来。2015年正式开源。云原生时代的RPC标准,由Go语言开发gRPC的核心设计思路网络通信 ------> gRPC 自己封装了网络通信的部分,提供了多种语言的 网络通信的封装,解决异构服务的问题 (C Java[Netty] Go)协议 ------> HTTP2 传输数据的时候 使用二进制的数据内容。支持双向流(双工) 支持连接的多路复用。
2023-05-09 15:41:50 856
原创 使用Docker搭建MySQL读写分离集群
mysql的主从复制是一个异步的复制过程,底层是基于mysql的二进制日志功能,就是一台或者多台mysql数据库(slave, 即从库)从另一台mysql数据库(master,从库)进行日志的复制然后再解析日志并应用到自身,最终实现从库的数据和主库的数据保持一致,mysql主从复制是mysql数据库的自带功能,无需借助第三方工具。
2023-04-16 20:10:17 392
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人