关闭
当前搜索:

[置顶] Openresty最佳案例 | 汇总

目录 Openresty最佳案例 | 第1篇:Nginx介绍 Openresty最佳案例 | 第2篇:Lua入门 Openresty最佳案例 | 第3篇:Openresty安装 Openresty最佳案例 | 第4篇:OpenResty常见的api Openresty最佳案例 | 第5篇:http和c_json模块 Openresty最佳案例 | 第6篇:OpenResty连接Mysql Openr...
阅读(5545) 评论(1)

[置顶] SpringBoot非官方教程 | 终章:文章汇总

springboot非官方教程,可能最接近于官方的一个教程,大多数案例都来自于官方文档,为了更好的理解,加入了个人的改造。...
阅读(53743) 评论(3)

[置顶] 史上最简单的 SpringCloud 教程 | 终章

错过了这一篇,你可能再也学不会 Spring Cloud 了!Spring Boot做为下一代 web 框架,Spring Cloud 作为最新最火的微服务的翘楚,你还有什么理由拒绝。赶快上船吧,老船长带你飞。终章不是最后一篇,它是一个汇总,未来还会写很多篇。我为什么这些文章?一是巩固自己的知识,二是希望有更加开放和与人分享的心态,三是接受各位大神的批评指教,有任何问题可以联系我。...
阅读(365853) 评论(113)

JWT如何在Spring Cloud微服务系统中在服务相互调时传递

在微服务系统中,为了保证微服务系统的安全,常常使用jwt来鉴权,但是服务内部的相互调用呢。经常有人在微信上问我,我给出一个解决办法,采用Feign的拦截器。在Feign中开启了hystrix,hystrix默认采用的是线程池作为隔离策略。线程隔离有一个难点需要处理,即隔离的线程无法获取当前请求线程的Jwt,这用ThredLocal类可以去解决,但是比较麻烦,所以我才用的是信号量模式。 在appli...
阅读(5401) 评论(3)

Openresty最佳案例 | 第9篇:Openresty实现的网关权限控制

简介采用openresty 开发出的api网关有很多,比如比较流行的kong、orange等。这些API 网关通过提供插件的形式,提供了非常多的功能。这些组件化的功能往往能够满足大部分的需求,如果要想达到特定场景的需求,可能需要二次开发,比如RBAC权限系统。本小节通过整合前面的知识点,来构建一个RBAC权限认证系统。技术栈本小节采用了以下的技术栈: Openresty(lua+nginx) mys...
阅读(5342) 评论(0)

Openresty最佳案例 | 第8篇:RBAC介绍、sql和redis模块工具类

RBAC介绍RBAC(Role-Based Access Control,基于角色的访问控制),用户基于角色的访问权限控制。简单地说,一个用户拥有若干角色,每一个角色拥有若干权限。这样,就构造成“用户-角色-权限”的授权模型。在这种模型中,用户与角色之间,角色与权限之间,一般都是多对多的关系。如图所示:sql_tool在本案例中,采用的就是这种权限设计的方式。具体的sql语句脚本如下:CREATE...
阅读(5169) 评论(0)

Openresty最佳案例 | 第7篇: 模块开发、OpenResty连接Redis

Lua模块开发在实际的开发过程中,不可能把所有的lua代码写在一个lua文件中,通常的做法将特定功能的放在一个lua文件中,即用lua模块开发。在lualib目录下,默认有以下的lua模块。lualib/ ├── cjson.so ├── ngx │ ├── balancer.lua │ ├── ocsp.lua │ ├── re.lua │ ├── semaphore.lua │...
阅读(5310) 评论(0)

Openresty最佳案例 | 第6篇:OpenResty连接Mysql

centos 安装myslCentos系统下安装mysql,先下载mysql-community-release-el7-5.noarch.rpm,然后通过yum安装,安装过程一直确定【Y】即可。cd /usr/downloads/wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpmrpm -ivh mysql-...
阅读(4949) 评论(0)

Openresty最佳案例 | 第5篇:http和C_json模块

http客户端Openresty没有提供默认的Http客户端,需要下载第三方的http客户端。下载lua-resty-http到lualib目录下,使用以下的命令下载:cd /usr/example/lualib/resty/ wget https://raw.githubusercontent.com/pintsized/lua-resty-http/master/lib/resty/http...
阅读(4909) 评论(0)

Openresty最佳案例 | 第4篇:OpenResty常见的api

获取请求参数vim /usr/example/example.conf location /lua_var { default_type 'text/plain'; content_by_lua_block { ngx.say(ngx.var.arg_a) } } 重新加载nginx配置文件: nginx -s reload在...
阅读(4830) 评论(2)

Openresty最佳案例 | 第3篇:Openresty的安装

我的服务器为一台全新的centos 7的服务器,所以从头安装openresty,并记录了安装过程中出现的问题,以及解决办法。 1.首先安装openrestycd /usr mkdir servers mkdir downloads yum install libreadline-dev libncurses5-dev libpcre3-dev libssl-dev perl cd /usr/serv...
阅读(5245) 评论(0)

Openresty最佳案例 | 第2篇:Lua入门

什么是lua Lua 是一种轻量小巧的脚本语言,用标准C语言编写并以源代码形式开放, 其设计目的是为了嵌入应用程序中,从而为应用程序提供灵活的扩展和定制功能。 Lua 是巴西里约热内卢天主教大学(Pontifical Catholic University of Rio de Janeiro)里的一个研究小组,由Roberto Ierusalimschy、Waldemar Celes...
阅读(5111) 评论(0)

Openresty最佳案例 | 第1篇:Nginx介绍

Nginx 简介Nginx是一个高性能的Web 服务器,同时是一个高效的反向代理服务器,它还是一个IMAP/POP3/SMTP 代理服务器。由于Nginx采用的是事件驱动的架构,能够处理并发百万级别的tcp连接,高度的模块化设计和自由的BSD许可,使得Nginx有着非常丰富的第三方模块。比如Openresty、API网关Kong。 BSD开源协议是一个给予使用者很大自由的协议。基本上使用者可以...
阅读(5591) 评论(0)

Java 代理模式

什么是代理代理是一种设计模式,它的核心思想,是将对目标的访问转移到代理对象上。这样做的好处就是,目标对象在不改变代码的情况下,可以通过代理对象加一些额外的功能。这是一种编程思想,在不改变原有代码的情况下,通过代理增加一些扩展功能。代理过程如图所示,用户访问代理对象,代理对象通过访问目标对象,来达到用户访问目标对象的目的,代理模式包含一下三个角色: ISubject:接口对象,该接口是对象和它的代理共...
阅读(17076) 评论(0)

Java注解详解

在使用SpringBoot作为Web敏捷开发的框架之后,SpringBoot除了自动装配配置的便捷之外,在很多时候需要基于注解来开发。注解不仅增加了代码的可读性,还增加了开发的速度。这篇文章主要讲述Java 注解。元注解元注解用于注解其他注解的。Java 5.0定义了4个标准的元注解,如下: @Target @Retention @Documented Inherited 现在来说说这四个元注解有什...
阅读(18148) 评论(0)

Java并发编程:线程封闭和ThreadLocal详解

转载请标明出处: /forezp/article/details/73017664 本文出自方志朋的博客 什么是线程封闭当访问共享变量时,往往需要加锁来保证数据同步。一种避免使用同步的方式就是不共享数据。如果仅在单线程中访问数据,就不需要同步了。这种技术称为线程封闭。在Java语言中,提供了一些类库和机制来维护线程的封闭性,例如局部变量和Thre...
阅读(19731) 评论(0)

Java并发编程:JMM和volatile关键字

Java内存模型随着计算机的CPU的飞速发展,CPU的运算能力已经远远超出了从主内存(运行内存)中读取的数据的能力,为了解决这个问题,CPU厂商设计出了CPU内置高速缓存区。高速缓存区的加入使得CPU在运算的过程中直接从高速缓存区读取数据,在一定程度上解决了性能的问题。但也引起了另外一个问题,在CPU多核的情况下,每个处理器都有自己的缓存区,数据如何保持一致性。为了保证多核处理器的数据一致性,引入多...
阅读(18780) 评论(0)

上传文件,经过Zuul,中文文件名乱码解决办法

转载请标明出处: /forezp/article/details/73017664 本文出自方志朋的博客 问题描述在项目中又一个上传文件的oss服务,直接调用服务的上传文件成功,如果经过网关zuul服务,上传中文名字的文件,文件名会出现乱码,最终导致上传失败,如果上传英文名字的文件,没有任何问题。怀疑网关zuul对中文做编码处理。解决问题的过程这...
阅读(22715) 评论(0)

Spring Cloud Sleuth进阶实战

为什么需要Spring Cloud Sleuth?微服务架构是一个分布式架构,它按业务划分服务单元,一个分布式系统往往有很多个服务单元。由于服务单元数量众多,业务的复杂性,如果出现了错误和异常,很难去定位。主要体现在,一个请求可能需要调用很多个...
阅读(34664) 评论(3)

如何在IDEA启动多个Spring Boot工程实例

在我讲解的案例中,经常一个工程启动多个实例,分别占用不同的端口,有很多读者百思不得其解,在博客上留言,给我发邮件,加我微信询问。所以有必要在博客上记录下,方便读者。step 1在IDEA上点击Application右边的下三角 ,弹出选项后,点击Edit Configurationstep 2打开配置后,将默认的Single instance only(单实例)的钩去掉。...
阅读(28585) 评论(8)

深入理解Zuul之源码解析

本文从源码的深入讲解了Spring Cloud Zuul。...
阅读(26571) 评论(5)

深入理解Hystrix之文档翻译

什么是Hystrix在分布式系统中,服务与服务之间依赖错综复杂,一种不可避免的情况就是某些服务将会出现失败。Hystrix是一个库,它提供了服务与服务之间的容错功能,主要体现在延迟容错和容错,从而做到控制分布式系统中的联动故障。Hystrix通过隔离服务的访问点,阻止联动故障,并提供故障的解决方案,从而提高了这个分布式系统的弹性。Hystrix解决了什么问题在复杂的分布式系统中,可能有成百上千个依赖...
阅读(22319) 评论(0)
126条 共7页1 2 3 4 5 ... 下一页 尾页
    个人资料
    • 访问:4448258次
    • 积分:15058
    • 等级:
    • 排名:第897名
    • 原创:125篇
    • 转载:1篇
    • 译文:0篇
    • 评论:1506条
    公众号推荐
    加我微信,拉你进Spring Cloud中国社区群



    关注我的微信公众号,优质内容定期分享
    钱柜娱乐开户
    共同进步
    QQ交流群:494240174
    (群空间有很多优质电子书哦)
    我的邮箱:miles02@163.com
    最新评论