分类目录归档:我是修电脑的

如名,学习各种代码的记录,恼火的解决记录。

微服务 API 网关 Kong 1.0 GA 版本正式发布(更新详情)

原文地址:https://github.com/Kong/kong/blob/master/CHANGELOG.md#100 ,(如有翻译的不准确或错误之处,欢迎留言指出) 这个是一个非常重要的版本,引入了对Service Mesh和Stream Routing支持的新功能,以及新的迁移框架,它还包括插件开发工具包(Plugin Development Kit)的1.0.0版本,它包含大量其他功能和修复,如下所示。此外,Kong 1.0中包含的所有插件都更新为使用PDK 1.0版。 像往常一样,主要版本升级需要数据库迁移和Nginx配置文件的更改(如果您自定义了默认模板),在计划升级Kong集群之前,请花几分钟时间阅读1.0升级指南,了解有关更改和迁移的更多详细信息。 作为主要版本,在Kon……

阅读全文 »

Openresty 第三方库 Lua_resty_http 使用教程

lua_resty_http是一个第三方 openresty 库,基于 Openresty/ngx_lua 的HTTP客户端,支持POST方法上传数据,刚好项目中用到需要从网关中发起请求,于是就用到这个库,把使用方式在这里分享一下。 安装第三方库lua_resty_http 第一步 首先找到项目地址:https://github.com/pintsized/lua-resty-http 第二步 然后将 lua-resty-http/lib/resty/ 目录下的 http.lua 和 http_headers.lua 两个文件拷贝到 /usr/local/openresty/lualib/resty 目录下即可,OpenResty 安装目录为 /usr/local/openresty)。不需……

阅读全文 »

微服务 API 网关 Kong JWT插件中文文档

原文链接: https://docs.konghq.com/hub/kong-inc/jwt/ (如有翻译的不准确或错误之处,欢迎留言指出) 验证包含HS256或RS256签名JSON Web令牌的请求(如RFC 7519中所述)。每个消费者都将拥有JWT凭证(公钥和密钥),这些凭证必须用于签署其JWT。然后可以通过令牌传递如下: 查询字符串参数 一个cookie 或者带有 Authorization 的头 如果验证了令牌的签名,Kong会将请求代理到您的上游服务,否则将丢弃该请求。Kong还可以对RFC 7519(exp和nbf)的一些注册声明进行验证。 相关术语 plugin:在请求被代理到上游API之前或之后,在Kong内部执行操作的插件 Service:表示外部上游API或微服务的K……

阅读全文 »

Nginx API for Lua 汇总

Nginx API for Lua 一览 官方文档Lua Ngx API Git hub lua-nginx-module 常量列表 常量 说明 值 Core constants 核心常量 ngx.OK (0)  ngx.ERROR (-1) ngx.AGAIN (-2) ngx.DONE (-4) ngx.DECLINED (-5) ngx.nil HTTP method constants HTTP方法常量 ngx.HTTP_GET ngx.HTTP_HEAD ngx.HTTP_PUT ngx.HTTP_POST ngx.HTTP_DELETE ngx.HTTP_OPTIONS ngx.HTTP_MKCOL ngx.HTTP_COPY ngx.HTTP_MOVE ngx.HTTP_PRO……

阅读全文 »

Docker Kong 中文文档

Docker Kong 中文文档 原文链接: https://docs.docker-cn.com/samples/kong/ (如有翻译的不准确或错误之处,欢迎留言指出) Kong 一个运行在Nginx上的开源微服务&API管理工具。 github项目地址:https://github.com/Mashape/kong 参考提示: 此内容从Docker官方文档导入,它是由原始上传者提供。你可以点击此页面查看Kong的Docker Store页面https://store.docker.com/images/kong. 支持的标签和相应的Dockerfile链接 0.10, 0.10.1, latest (Dockerfile) 0.9, 0.9.9 (Dockerfile) 有关上……

阅读全文 »

有状态(SESSION)和无状态(JWT)登录验证

最近公司在做系统设计的时候提到了这么一个讨论,就是有状态的登录验证和无状态的登录验证,至于这两者的利弊有哪些,具体如何做选择,可以把两者的特点来做一些对比。其实这两者共同的目的就是解决http协议的无状态特性,标示客户端会话用户。不论用这两者哪种方式,token 和 session 都可能会被窃取从而发生CSRF攻击,全站 HTTPS 是必不可少。google一下发现关于这两者的讨论都不少,在此总结一番,有其他意见的欢迎留言讨论。 有状态(SESSION) 所谓有状态,就是的就是传统的 cookie session ,cookie的身份验证是有状态的。这意味着验证的记录或者会话(session)必须同时保存在服务器端和客户端。服务器端需要跟踪记录session并存至数据库,同时前端需要在co……

阅读全文 »

Tyk 初探(安装以及使用)

Tyk 安装以及使用 Tyk介绍 官网地址:https://tyk.io/ 官方文档:https://tyk.io/docs/ 项目地址:https://github.com/TykTechnologies/ 安装介绍 tyk依赖mongo以及redis,如果手动安装按照步骤,需要注意先安装好这两个。 docker安装方式: 官方有提供一个demo,这个demo已经集成了所有的安装项目需要,项目地址 :https://github.com/TykTechnologies/tyk-pro-docker-demo 执行命令clone项目下来 git clone https://github.com/TykTechnologies/tyk-pro-docker-demo.git 然后启动docke……

阅读全文 »

Kong初探 (插件开发以及使用)

Kong已有插件介绍 Kong Plugins中列出了已有的所有插件,有些插件只能在企业版使用,有些插件是社区成员开发的,大部分是Kong公司开发,并集成到社区版中。下面是社区版集成的、Kong公司维护的插件(2018-09-30 14:33:03): 认证插件: Basic Auth HMAC Auth JWT Auth Key Auth LDAP Auth OAuth 2.0 Auth 安全插件: Bot Detection (机器人爬虫检测) CORS (跨域请求) IP Restriction (IP限制) 流控插件: ACL (访问控制) Rate Limiting (请求速率限制) Request Size Limiting(返请求大小限制) Request Terminatio……

阅读全文 »

Kong初探 (安装以及启动)

Kong是由Mashape出品的一款开源的api gateway服务器,官方解释为API Gateway, or API Middleware,由lua语言编写. kong的主要功能: 集中管理api,各个业务模块可以在kong上注册,集中访问 权限控制,提供丰富的插件,包括Base Authentication, Oauth2, HMAC Authentication, LDAP, JWT等等 安全管理 访问监控 数据分析 过滤数据和转换 日志集中收集和报告 丰富的可插拔的插件 自定义开发插件 安装PostgreSQL数据库 Kong依赖于数据库PostgreSQL 或者Cassandra ,这里我们只说一下 PostgreSQL,注意安装的版本,官方建议PostgreSQL 9.5+,C……

阅读全文 »

你也许应该看的一些PHP文章

面试 面试题 高级PHP (初级架构师) 面试题 大厂PHP面试题汇总 记一次腾讯PHP后端开发提前批面试 PHP PHP新的垃圾回收机制:Zend GC详解 PHP7内核分析-垃圾回收 深入理解php底层:php生命周期 依赖注入(DI)在PHP中的实现 PHP底层的运行机制与原理 php-fpm 与 Nginx优化总结 OOP PHP设计模式之策略模式 面向对象编程(OOP)中组合与继承的区别 类的组合与继承 快速理解-设计模式六大原则 PHP设计模式教程 Composer 彻底搞懂Composer自动加载原理 php扩展中autoload的实现 Session 通俗易懂,记忆深刻的cookie和session的理解 PHP Session 原理及安全性提升 Session原理简述 PH……

阅读全文 »

亚马逊AWS的免费服务搭建Shadowsocks(Ubuntu 16.04)

亚马逊 AWS 免费服务 首先你需要注册一个免费的亚马逊的 AWS 服务,具体注册教程如下,准备好一张信用卡,根据下面的免费注册教程一步一步的来,就可以得到了一年免费使用的vps。这里就使用这个免费的vps来搭建一下Shadowsocks服务。 免费注册教程 AWS一年免费VPS服务器申请及使用教程 aws官方首页 https://aws.amazon.com 免费vps地址 https://aws.amazon.com/free VPS管理 https://console.aws.amazon.com/ec2/home 注册时候的注意事项 在注册完成后开始选择vps的时候,切记暂停一下,看一下右上角的服务器节点地址,因为很多人直接默认填过去了,导致选择的美国东部俄亥俄等,其实俄亥俄的延时还……

阅读全文 »

如何高效的获取远程图片的长宽、格式、文件大小

最近在做一个图片抓取系统,其中有一个地方是需要用到获取远程图片的长宽,大小,和格式信息;不过一提到获取这样的信息,那么脑海里马上就会浮现 getimagesize() 这个函数,但是,在真正用到的时候才发现,这个函数很笨,效率很低,一方面是它会把这个图片直接下载下来,然后再获取其中的信息,而我们又知道,下载东西,CURL肯定是迅猛无比的;那么能不能把这两者结合起来呢~ 但是问题又出现了,如果我用CURL的方式,就不太容易获取图片长宽信息了,不够方便,于是乎我就翻阅了文档中和图片有关的函数,就找到了这么一个getimagesizefromstring(),刚好符合我的要求!于是乎你只需要下面这个函数就可以比较高效的获取啦! public function get_remote_filesize……

阅读全文 »