摘要: 在 wsl 中用 docker-compose 搭建了一台 zookeeper + 三台 broker 的 kafka 集群,使用的镜像是 bitnami/kafka,在按照镜像文档运行容器后,发现运行在宿主机里的客户端程序无法正确的推送/消费消息,研究后发现镜像文档只适用于客户端程序和 kafka 阅读全文
posted @ 2023-03-25 18:34 Assassin007 阅读(261) 评论(0) 推荐(0) 编辑
摘要: 在 gRPC 调用过程中,我们可以拦截 RPC 的执行,在 RPC 服务执行前或执行后运行一些自定义逻辑,这在某些场景下很有用,例如身份验证、日志等,我们可以在 RPC 服务执行前检查调用方的身份信息,若未通过验证,则拒绝执行,也可以在执行前后记录下详细的请求响应信息到日志。这种拦截机制与 Gin 阅读全文
posted @ 2021-07-08 23:07 Assassin007 阅读(483) 评论(0) 推荐(1) 编辑
摘要: 在 gRPC(1):入门及简单使用(go) 中,我们实现了一个简单的 gRPC 应用程序,其中双方通信是简单的请求—响应模式,没发出一个请求都会得到一个响应,然而,借助 gRPC 可以实现不同的通信模式,这里介绍四种 gRPC 应用程序的基础通信模式:一元RPC、服务端流RPC、客户端流RPC、双向 阅读全文
posted @ 2021-07-02 22:10 Assassin007 阅读(575) 评论(0) 推荐(1) 编辑
摘要: 1、RPC 1.1 什么是RPC RPC(Remote Procedure Call),即远程过程调用,过程就是方法,简单来说,它就是一种能够像调用本地方法一样调用远程计算机进程中的方法的技术,在这种调用中,我们不需要了解任何网络通信的细节(当然,就使用来说) 最终解决的问题:让分布式或者微服务系统 阅读全文
posted @ 2021-06-27 17:16 Assassin007 阅读(784) 评论(0) 推荐(0) 编辑
摘要: 一、米特尼克的圣诞攻击 1、攻击背景 在Unix世界中,可以很容易地给予信任。 假设用户在机器A和机器B上都有一个帐户,为了使两者之间的麻烦最小,就可以在它们之间建立全双工的信任关系。 在A的主目录中,创建一个 .rhosts 文件:echo "hostB 用户名" > .rhosts,在B的主目录 阅读全文
posted @ 2021-03-14 18:54 Assassin007 阅读(369) 评论(0) 推荐(0) 编辑
摘要: 1. 项目背景介绍 工程实践项目是实现一个类似知乎的问答社区系统(后端) 基本要求: 支持问题、回答的发布和修改(文字) 问题拉链,支持按热度和时间序排序 回答点赞点踩 热门问题列表 进阶要求: 高并发 支持评论 问题、回答支持图片 支持第三方登录 支持第三方分享 2. 软件设计方案 2.1 系统架 阅读全文
posted @ 2020-12-26 22:50 Assassin007 阅读(346) 评论(0) 推荐(1) 编辑
摘要: 1. 理论知识 1.1 什么是https 传统的 HTTP 协议以明文方式进行通信,不提供任何方式的数据加密,很容易被中间攻击者破解通信内容或者伪装成服务器与客户端通信,在安全性上存在很大问题。 HTTPS 协议是由 HTTP 加上 TLS/SSL 协议构建的可进行加密传输、身份认证的网络协议,主要 阅读全文
posted @ 2020-12-13 11:14 Assassin007 阅读(2521) 评论(0) 推荐(1) 编辑
摘要: 1. 前言及项目背景介绍 最近在高级软件工程课上学习了对项目中的需求进行分析和建模的基本方法,本文针对最近在做的工程实践项目,运用所学方法进行用例建模和业务领域建模,以及数据建模,最终形成概念原型,以验证所学知识。 工程实践项目是实现一个类似知乎的问答社区系统(后端),因为有成熟的产品,所以整体来说 阅读全文
posted @ 2020-12-01 18:49 Assassin007 阅读(593) 评论(0) 推荐(0) 编辑
摘要: 1. 前言 本文利用 GitHub 平台进行一个多人项目开发流程的演练,以加深课上所学内容。 参考孟老师的文章:五⼤场景玩转 Git,只要这一篇就够了! 2. 初始化项目 2.1 新建远程项目 一个多人项目通常是从远程创建新仓库开始,这里我们在 GitHub 新建一个仓库 git101 : 新建仓库 阅读全文
posted @ 2020-10-04 16:12 Assassin007 阅读(1581) 评论(3) 推荐(5) 编辑
摘要: 1、Docker简介 开源的应用容器引擎 打包环境和应用到一个轻量级,可移植的容器中,发布到任何 Linux 机器上,规避了软件跨环境迁移的问题 沙箱机制,相互隔离 1.1 安装 官方文档 默认情况下,docker 命令会使用 Unix socket 而不是 tcp 与 Docker 引擎通讯,只有 阅读全文
posted @ 2020-10-01 18:13 Assassin007 阅读(525) 评论(2) 推荐(3) 编辑