架构
文章平均质量分 76
钢铁峡
AI\架构
展开
-
实施经验-利用nginx保障web服务安全
文章目录1.前言2. 常见安全问题3.最终方案3.1. 如果是多个域名,采用下列方法3.2. 利用Referer防盗链参考1.前言记得刚来项目组时,每隔一段时间就报几个安全漏洞,然后就和团队小伙伴花一两天时间处理下,一会儿改java代码一会儿改前端,前前后后也用去了很多时间。复盘整理下思路,发现走了不少弯路,大多数的安全漏洞都可以由nginx拦截,极少会涉及到后端业务代码调整。安全问题属于系统架构级问题,要用系统架构的思维去解决 ,通过nginx配置,可以减少对后端业务开发的要求,而且现场实施人员,原创 2021-07-28 11:20:03 · 414 阅读 · 0 评论 -
实施经验-https证书理解
文章目录先从一个需求案例说起流程梳理在https协议中是如何使用证书的概念梳理openssl参数说明参考:先从一个需求案例说起给甲方的web服务需要使用https,是部署在内网的,连域名也没有用ip访问,大家又不想花钱,于是自己生成一个https证书,参考【HTTPS】自签CA证书 && nginx配置https服务数字证书系列–将证书绑定到多个URL以及IP,过程如下:1、创建自签CA证书(根证书)openssl genrsa -out CA_Key.key 2048 # 创原创 2021-07-23 10:31:25 · 363 阅读 · 0 评论 -
实施经验-网络开通策略小案例
网络开通策略小案例场景这是我项目实施中一个经典的网络开通策略场景,作为一个系统(下面称为系统A),需要调用的服务比较多,需要提供的服务也比较多,涉及的网络区域也比较多具体要求说明提供的服务:面向互联网的患者提供患者端服务面向内部医生提供医生端服务调用的服务:调用第三方的用户信息服务,如公众号身份认证调用HIS和LIS的接口涉及的网络区域比较多:面向互联网面向医院内网区DMZ区(Demilitarized Zone隔离区/非军事化区)开通策略因此一个完整的网络开通策原创 2021-07-23 10:28:10 · 4859 阅读 · 1 评论 -
docker-network常见问题和用法总结
网络冲突问题(docker和docker-compose)启动docker-compose时,网络冲突现象:dokcer引擎启动时使用了--bip参数,但是该参数被docker-compose忽略,在 docker0 之外,有启动了一个桥接接口,名称为br-3d2f2e1ebfc7,导致与本机的网段冲突[root@yuwenzhen build]# ifconfigbr-3d2f2e1ebfc7: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> m原创 2021-07-20 17:51:32 · 1602 阅读 · 0 评论 -
一次通过容器管理工具修改数据库的奇特经历
需求场景要修改mysql数据库中的数据,且只能通过容器管理工具(portainer)过程记录**step1: ** 通过portainer工具登录mysql容器的控制台mysql -uroot -pmysql> use eladminDatabase changedmysql> select * from dw_bzkss_xh;+-----+-------------+----------+------------+----------+------------+--原创 2021-07-20 13:13:09 · 100 阅读 · 0 评论 -
docker生态-对象存储服务minio
介绍和原理业内较为主流的开源存储框架MinIO、Ceph、SeaweedFS, 在github上MinIO的star是最多的,远超其它框架MinIO完全兼容S3标准接口,客户端和服务端之间通过http/https进行通信。MinIO提供客户端mc(MinIO Client)以支持UNIX命令,同时支持多语言的客户端SDK。docker方式安装说明特别说明:通过命令行方式安装使用MinIO快速入门指南mkdir /home/minio-datadocker run -d --name mini原创 2021-07-01 16:17:43 · 458 阅读 · 0 评论 -
docker生态-容器管理工具portainer
文章目录介绍安装部署汉化说明初始密码说明最终的docker-compose通过nginx代理时的小注意参考:介绍Portainer是Docker的图形化管理工具,提供状态显示面板、应用模板快速部署、容器镜像网络数据卷的基本操作(包括上传下载镜像,创建容器等操作)、事件日志显示、容器控制台操作、Swarm集群和服务等集中管理和操作、登录用户管理和控制等功能。功能十分全面,基本能满足中小型单位对容器管理的全部需求。通过portainer服务端,连接agent,达到管理agent节点上docker容器的目的原创 2021-07-01 14:43:14 · 1008 阅读 · 0 评论 -
docker生态-mysql客户端phpAdmin
介绍phpMyAdmin是一个非常受欢迎的基于web的MySQL数据库管理工具。它能够创建和删除数据库,创建/删除/修改表格,删除/编辑/新增字段,执行SQL脚本等。在我们的工作环境中,通过docker-compose一键完成整个服务集群的部署,包含java、nginx、mysql等。基于docker部署的phpMyAdmin可以配合一同部署的mysql,提供运维人员一种客户端访问方式,便于运维人员在快速部署后立即进入工作状态。快速启动docker化https://github.com/phpmy原创 2021-06-28 11:37:05 · 956 阅读 · 0 评论 -
linux系统管理-locale语言环境
文章目录概念理解变量说明命令常见问题解决问题:ssh登录报错“manpath: can't set the locale; make sure $LC_* and $LANG are correct”问题:终端时的中文乱码问题问题:用xshell查看中文正常,但是vim是乱码,原因可能是xshell工具的编码问题问题:Mac环境下vim遇到的语言问题参考linux下语言环境的问题,一般不太会碰到,要是真遇到字体问题也是挺烦人的,不解决看到系统乱码和错误提示挺膈应人,解决后就清爽多了。linux的语言环境是原创 2021-06-25 15:37:56 · 2036 阅读 · 0 评论 -
docker部署规范-目录结构与辅助工具
文章目录docker部署规范-目录结构与辅助工具规范部署目录结构辅助工具解决功能介绍参考docker部署规范-目录结构与辅助工具本规范根据多个项目实践,总结如下规范部署目录结构目录结构的规划基于下面几点考虑:一个主机上可以部署多套系统一个系统应该是”自洽“的,具有完整的逻辑性,系统涉及的所有文件是自包含的目录结果尽量简单,便于管理(不再执行dockcer-compose up --build命令),本地的配置修改通过volumes文件夹或文件挂载的方式进行容器内文件覆盖完成目录结构如下所原创 2021-06-07 19:22:41 · 445 阅读 · 0 评论 -
如何替换https证书(nginx独立启动模式)
如何替换https证书(nginx独立启动)如何替换https证书(nginx独立启动)先确认证书,正常情况下有两个文件一个.key结尾,另一个是.crt或者.pem结尾,先查看.crt或者.pem的内容openssl x509 -in STAR_lcz_com.crt -text把证书上传到服务器,例如 /etc/nginx/cert/目录修改部署nginx.conf,如server { listen 443 ssl; server_name x.abc.com; #原创 2021-06-04 10:22:12 · 686 阅读 · 0 评论 -
如何替换https证书(docker-compose部署模式)
如何替换https证书(docker-compose部署模式)先确认证书,正常情况下有两个文件一个.key结尾,另一个是.crt或者.pem结尾,先查看.crt或者.pem的内容openssl x509 -in STAR_lcz_com.crt -text把证书上传到服务器部署目录(例如/home/build/my_deploy)的cert文件夹检查部署目录下的Dockerfile文件,确认cert目录下的证书拷贝到镜像中,例如FROM my_xxx_webCOPY nginx.con原创 2021-06-04 10:19:21 · 571 阅读 · 0 评论 -
docker部署规范-服务命名和端口分配
文章目录docker部署规范-服务命名和端口分配服务命名端口命名服务间的引用docker部署规范-服务命名和端口分配本规范根据多个项目实践总结,服务命名和端口分配都体现在docker-compose.yml的配置中服务命名一个产品会包含多个服务,每个服务的命名如下:优先采用中间件名称、语言名称对服务进行命名,如下mysqlmongojavapythonweb如果同一类型服务有多个,则采用中横线命名方式进行区分,如下:java-auth :java鉴权服务web-auth:原创 2021-06-02 13:01:39 · 710 阅读 · 0 评论 -
docker部署规范-目录结构与辅助工具(旧)
文章目录docker部署规范-目录结构与辅助工具规范部署目录结构自动镜像打包工具自动版本打包工具自动升级工具参考docker部署规范-目录结构与辅助工具本规范根据多个项目实践,总结如下规范部署目录结构目录结构的规划基于下面几点考虑:一个主机上可以部署多套系统一个系统应该是”自洽“的,具有完整的逻辑性,系统涉及的所有文件是自包含的当系统需要本地二次构建时,速度要够快(docker-compose.yml所在目录不能有太多无关文件,否则会影响docker up --build执行速度)目录结原创 2021-06-02 13:00:20 · 209 阅读 · 0 评论 -
docker部署规范-与gitlab-ci集成
文章目录docker部署规范-与gitlab-ci集成持续集成的工程目录结构构建镜像build.shDockerfile说明web服务的Dockerfilejava服务的Dockerfilepython服务的Dockerfile与CI集成的.gitlab-ci.yml参考docker部署规范-与gitlab-ci集成本规范根据多个项目实践,总结如下持续集成的工程目录结构一个完整产品会包含多个服务,比如web服务、java服务、python服务等而且每个服务的代码都会对应不同的代码工程,工程目录结构原创 2021-06-02 12:40:28 · 276 阅读 · 1 评论 -
kafka实践小结
原理zookeeper分布式系统就是在不同地域分布的多个服务器,共同组成的一个应用系统来为用户提供服务,在分布式系统中最重要的是进程的调度分布式协调技术主要是用来解决分布式环境当中多个进程之间的同步控制,让他们有序的去访问某种共享资源,防止造成资源竞争(脑裂)的后果协调器就是分布式系统中经常提到的那个“锁”,通过这个“锁”机制,就可以保证分布式系统中多个进程能够有序的访问该共享资源。把这个分布式环境下的这个“锁”叫作分布式锁,布式锁就是分布式协调技术实现的核心内容。比较流行的是,Google的原创 2021-06-01 21:09:01 · 874 阅读 · 4 评论