moxiaomomo的专栏

个人blog: blog.moguang.me

排序:
默认
按更新时间
按访问量

Nginx如何配置跨域(多个域名)

假设需要允许来源为localhost或.*.example.com下所有二级域名的访问,在nginx中只需要类似这样配置即可: location / { set $match ""; # 支持http及ht...

2018-10-08 16:40:32

阅读数:34

评论数:0

springboot 集成swagger

1. 关于swagger 我们撰写的接口文档,有面向内部开发者的,也有面向外部的。很多情况下文档和代码是分离的,有好处也有坏处。而当我们写java项目想偷懒,想要自动生成接口文档时,swagger工具是个不错的选择。 在Golang中, godoc时标准化的工具,而java似乎没这么舒服。所以这里...

2018-09-28 14:09:17

阅读数:67

评论数:0

gitlab与jenkins持续集成的一种途径

环境准备 本文主要简要记录gitlab与jenkins的持续集成过程,并通过SSH完成kubernetes应用的自动部署。 jenkins所需基本的插件包括:Gitlab Hook Plugin,Gitlab Plugin,Docker Plugin,Publish over SSH等。 假设...

2018-09-26 11:05:00

阅读数:41

评论数:0

Centos7安装ElasticSearch6.4

本文主要是记录在Centos7下安装ElasticSearch集群及管理工具Cerebro的流程。 节点准备 节点IP 角色 ES节点名称 192.168.1.10 master node1 192.168.1.11 data node2 1.下载ES安装包 cd /opt...

2018-09-19 21:47:35

阅读数:76

评论数:0

Redis共享Session原理及示例

Redis共享session的作用 微服务自身可以保持无状态,应用实例数量的多少不会影响用户登录状态; 可实现单点登录的踢出功能,如可以让上次异地登录的用户下线; session在多个服务或服务器间共享,实现多站点单点登录(参考SSO服务) Redis缓存session原理简述 其工作原理,可...

2018-09-17 22:04:51

阅读数:64

评论数:0

Centos7安装Kubernetes1.11集群及Dashboard工具

1. 测试节点 暂时一个Master节点,一个Node节点 192.168.1.148 Master 192.168.1.6 Node 建议首先清空iptables路由规则: # (清理filter表的规则,不加 –t 就默认filter表) iptables -X &am...

2018-08-21 11:53:47

阅读数:824

评论数:0

centos7安装ftp服务

通过yum安装vsftpd yum install -y vsftpd 修改配置文件/etc/vsftpd/vsftpd.conf 增加了一些自定义配置,全部配置详细如下: # 原有初始配置 local_umask=022 dirmessage_enable=YES xferlog...

2018-08-16 09:48:23

阅读数:92

评论数:0

微服务开发之单点登录

关于CAS CAS是一种单点登录开源框架,遵循apache2.0协议,代码托管在github.com/apereo/cas上。 而单点登录(SSO, Single Sign On)可简单理解为当用户在一个应用上登录了,其他被授权信任的关联应用不用再登录。 比如在同一个浏览器中登录了天猫,再打开淘...

2018-07-16 08:52:35

阅读数:308

评论数:0

微服务开发之熔断器

一般在微服架构中,有一个组件角色叫熔断器。顾名思义,熔断器起的作用就是在特定的场景下关掉当前的通路,从而起到保护整个系统的效果。 在微服务架构中,一般我们的独立服务是比较多的,每个独立服务之间划分责任边界,并通过约定协议接口来进行通信。当我们的调用链路复杂依赖多时,很可能会发生雪崩效应。 假设...

2018-06-22 17:47:39

阅读数:304

评论数:0

PySpark NaiveBayes算法之中文文本分类测试

假设现在有N行文本,每行文本的第一列已经打好标签, Y 或 N, 用于标识该行文本是否包含敏感词汇;第二列之后的每一列是对某些句子或文本进行中文分词之后的词汇。比如 N 朴素贝叶斯算法 是 生成模型 中 最经典 分类算法 之一 Y 这是 一条 包含 色情 的 语句 我们现在用pyspark...

2018-06-19 16:33:39

阅读数:296

评论数:0

[分布式trace]在Ubuntu17.10上部署jaeger

关于Jaeger Jaeger是由Uber发布的一种分布式调用链跟踪系统,主要用于集成到微服务调用追踪,和Zipkin作用类似。通过调用链跟踪系统,可以快速了解各节点的响应状况,方便定位问题。 Jaeger关键组件 Jaeger本身是一种可单独部署运行的服务,主要有以下几个关键组件: ...

2018-06-18 13:30:17

阅读数:255

评论数:0

基于jaeger和grpc实现的rpc调用链跟踪模块

grpc-jaeger说明 具体源码可参考我的github源码 grpc-jaeger是基于Go的针对gRPC的一种拦截器实现,用于结合jaeger来实现rpc调用链跟踪;可用于集成到微服务的分布式trace功能中。 grpc包中对外暴露了两个接口:grpc.UnaryClientInter...

2018-06-17 22:03:46

阅读数:557

评论数:0

基于环形队列和令牌桶实现的限流模块

概述 在分布式服务架构下,比如微服务架构,一般需要构建一个独立的gateway模块。gateway模块的主要作用包括流量控制,规则路由,负载均衡,鉴权,熔断等等;而gateway一般是stateless的,因此可自由弹性伸缩集群规模,以应对实际的访问场景。 本文主要介绍通过golang实现限流...

2018-06-15 09:29:58

阅读数:259

评论数:0

[微服务]关于架构设计的问题

微服务架构的核心思想是类似的,而不同的应用场景总有不同的具体实践架构。 微服务设计前,我想有几个问题应该需要思考一下: 客户端如何访问这些服务 每个服务的边界如何划分,如何通信 划分成这么多的服务,如何实现部署 划分成这么多的服务,如何有效监控和容灾 以下是基于本地项目环境设计的一种初步...

2018-06-04 14:18:57

阅读数:174

评论数:0

[分布式协议]Go实现raft协议

之前对raft算法是有所了解但无深究,偶然机会下读了下大牛的goraft代码 后,决定自己实现一把。 目前代码基本完成,本人水平有限,代码基本能用,未经严格测试,欢迎指导:源码github地址 以下是项目说明README: raft协议的go版本,实现功能包括: 选主投票 节点心跳 日志...

2018-05-28 15:21:12

阅读数:352

评论数:0

shell curl 与 python requests的一次对比

shell curl 与 python requests 偶然发现了curl和requests库的一个区别。场景是这样的– 这样使用curl去发起post请求: curl -v -X POST http://api.xx.com/api/yy.php --data 'params={&a...

2018-04-19 13:55:01

阅读数:1276

评论数:0

[python]书籍信息爬虫示例

[python]书籍信息爬虫示例 背景说明 需要收集一些书籍信息,以豆瓣书籍条目作为源,得到一些有效书籍信息,并保存到本地数据库。 获取书籍分类标签 具体可参考这个链接: https://book.douban.com/tag/?view=type 然后将这些分类标签链接存到本地某个文...

2018-01-10 14:59:47

阅读数:780

评论数:2

golang并发下载多个文件

背景说明假设有一个分布式文件系统,现需要从该系统中并发下载一部分文件到本地机器。 已知该文件系统的部分节点ip, 以及需要下载的文件fileID列表,并能通过这些信息来拼接下载地址。 其中节点ip列表保存在xx_node.txt, 要下载的fileID保存在xx_fileID.txt中。代码示...

2018-01-03 17:27:37

阅读数:1951

评论数:0

[Golang]通过interface实现"泛型"的用例

目前Golang最新版本为1.9, 暂时不支持泛型。 不过可以通过interface实现”泛型编程”效果, 下面以slice类型数据的添加/删除元素为例, 供大家参考一下:package mainimport ( "errors" "fmt&qu...

2017-12-06 10:39:33

阅读数:1377

评论数:0

使用parallel-ssh批量执行远程shell命令

pssh使用场景假设现在需要对数百台服务器节点进行配置更新或者执行一些简短command,而目前并没有完备的部署工具软件, 那可以选择向pssh这样的并行登录远程终端并执行指定命令的shell工具。 以前机器节点少的时候,直接用shell写个for循环来执行命令,也没什么问题。当节点数量多了之后...

2017-12-05 11:39:56

阅读数:915

评论数:0

提示
确定要删除当前文章?
取消 删除