如何选择一副眼镜

如何选配眼镜是一个近视眼每隔几年就会遇到的问题,刚好最近也需要配眼镜,故在此总结一波。 验光 一个比较尴尬的事实是,国内的眼光流程还是很不规范的,很多验光师并不具备眼科基础知识,短期培训就直接在眼镜店上岗了。而在国外眼光处方是需要有资质的医师才能开具的。 所以,虽然不能说眼镜店等地方的验光师不好,但是如果你第一次配镜,或者是高度近视,或者还是个孩子,那么建议去医院的验光中心验光,那里出具的配镜处方是最保险的。 镜架的选择 选镜架其实就是选镜架的材质。常见的包括板材、TR90(塑胶钛)、合金、钛等等…… 材料: 板材硬度大,光泽好,不易变形; Ti-P/Ti-C:Ti是含有钛材料的标识,Ti-P代表纯钛,Ti-C则代表钛合金等等。钛镜架耐腐蚀,重量轻,不过价格嘛,自然是……

阅读全文 »

使用 libfaketime 修改 docker 容器时间

容器的时间问题: 如果想要直接进入容器,使用date -s修改日期,则会出现一个date: cannot set date: Operation not permitted的错误,而且也不会成功。 这是由于docker容器的隔离是基于Linux的Capability机制实现的, Linux的Capability机制允许你将超级用户相关的高级权限划分成为不同的小单元。目前Docker容器默认只用到了以下的Capability. CHOWN, DAC_OVERRIDE, FSETID, FOWNER, MKNOD, NET_RAW, SETGID, SETUID, SETFCAP, SETPCAP, NET_BIND_SERVICE, SYS_CHROOT, KILL, AUDIT_WRITE ……

阅读全文 »

时间测试神器libfaketime的使用

在做开发测试的时候,时常会遇到一些需要时间设置的问题,通常的时候,我们就是直接修改系统时间来完成,但是由于一般服务器上会跑着很多服务,一旦修改难免会影响到其他的程序,所以我们得找到一个方便的,只对自己需要使用的服务或进程修改时间,而不影响其他的,且修改方便的神器。好在有这么一款好用的: https://github.com/wolfcw/libfaketime/ 根据其官方介绍如下:  libfaketime会拦截程序用于检索的各种系统调用当前日期和时间。然后报告并修改(伪造)的日期和时间(由您用户指定的)到这些程序。这意味着您可以修改系统时间一个程序不需要改变系统范围内的时间。 libfaketime 允许您指定绝对日期(例如,01/01/2004)和相对日期(如10天前)。 例如,lib……

阅读全文 »

数据迁移工具对比&介绍

1.Tungsten Replicator 简介 Tungsten Replicator是数据库集群和复制供应商 Continuent 推出的高性能、开源的数据复制引擎,是Continuent最先进的集群解决方案的核心组件之一,特别适合作为异构数据库之间数据迁移的解决方案。 Tungsten replicator被定义为是异构数据库复制框架,可实现不同版本,不同种类数据库之间的数据库复制。根据官方的说明,现在可以实现mysql各版本件,以及mysql与oracle间的数据库复制,但是一些函数上限制还是不能避免。 官网:https://code.google.com/p/tungsten-replicator/wiki/Downloads 特点 支持高版本MySQL向低版本复制,如5.1-&g……

阅读全文 »

解决 protobuf 3 PHP 中枚举值报错问题

前两天在项目中突然遇到一个protobuf php库报错,报错为: “Undefined offset: 8″,”context” 这个一看就是直接是索引下标,找不到值就超出报错了,再往前回溯一下报错,发现这个错误是 Google\\Protobuf\\Internal\\Message 报出的。后来看了项目的.proto文件,发现是其他项目的同事更新了这个proto文件,把一个结构体的枚举值添加了一个,导致我们这边项目在收到这个结构体的时候无法识别。此时其实只要更新proto文件就可以解决问题,但是这样并不能一劳永逸,下一次遇到了枚举值增加的时候依旧会出现。 不过按说谷歌的protobuf php库用了这么多年应该没什么大问题,回溯一下代码发现在 https://github.com/pr……

阅读全文 »

Kong 1.4 发布!自动检测Cassandra Topology 更改,自定义Host Header以及更多功能!

原文地址:https://konghq.com/blog/kong-gateway-1-4-released-auto-detect-cassandra-topology-changes-custom-host-header-much/ 我们很高兴地宣布1.4系列的第一个版本已经发布! 我们的工程团队和出色的社区成员在此版本中添加了许多新功能,改进和修复。 请阅读以下内容,了解Kong Gateway 1.4中最相关的更改以及如何充分利用这些新增功能。 有关完整的详细信息,请参阅更改日志;有关如何从以前的Kong版本进行升级的说明,请参阅升级路径。 自动检测Cassandra Topology 更改 从Kong Gateway 1.4开始,将自动检测对Apache Cassandra群集拓扑……

阅读全文 »

在 CentOS 安装 Kong

安装包 首先下载配置的相应软件包: Centos6:https://bintray.com/kong/kong-rpm/download_file?file_path=centos/6/kong-1.3.0.el6.amd64.rpm Centos7:https://bintray.com/kong/kong-rpm/download_file?file_path=centos/7/kong-1.3.0.el7.amd64.rpm 企业试用用户应从其欢迎电子邮件中下载其包,并在步骤1之后将其许可保存到/etc/kong/license.json。 YUM Repositories 你也可以通过YUM安装Kong;按照下面“Set Me Up”部分中的说明进行操作。 RPM Repositor……

阅读全文 »

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

从Kong调用 AWS Lambda函数。它可以与其他请求插件结合使用以保护,管理或扩展功能。 注意:此插件与0.14.0之前的Kong版本和0.34之前的Kong Enterprise捆绑在一起的功能与此处记录的功能不同。 有关详细信息,请参阅CHANGELOG。 术语 plugin: 在请求被代理到上游API之前或之后,在Kong内部执行操作的插件。 Service: 表示外部 upstream API或微服务的Kong实体。 Route: 表示将下游请求映射到上游服务的方法的Kong实体。 Consumer: 代表使用API的开发人员或机器的Kong实体。当使用Kong时,Consumer 仅与Kong通信,其代理对所述上游API的每次调用。 Credential: 与Consumer……

阅读全文 »

使用源码安装 Kong

无论是否有数据库,Kong都可以运行。 使用数据库时,您将使用kong.conf配置文件在启动时设置Kong的配置属性,并将数据库用作所有已配置实体的存储,例如Kong代理所在的 Routes 和 Services 。 不使用数据库时,您将使用kong.conf的配置属性和kong.yml文件来将实体指定为声明性配置。 使用数据库 安装依赖项OpenResty 1.15.8.1。作为一个OpenResty应用程序,您必须遵循OpenResty安装说明。您将需要OpenSSL和PCRE来编译OpenResty,并至少使用以下编译选项: $ ./configure \ –with-pcre-jit \ –with-http_ssl_module \ –with-http_realip_mo……

阅读全文 »

第二十八年中秋

第二十八年中秋 生日刚刚过去,第二十八年就这样猝不及防的来到了,这个思想汇报系列也走到了第七个年头,不过还好,总算也是也坚持下来了,一百多篇博客,不算多也不算少,持续不断的写博客,也算是一种自我总结和反思吧。去年的这个时候定了一个小小的目标:接下来的一年时间里,平均每个月要写五篇博客,查看了一下归档记录,基本算是达到了,给自己一个小小的掌声,其中大部分的还是自己的一些学习和记录。也免得以后需要使用到相关技能的时候,记不起来。这个博客是一直使用wordpress搭建的,2015年的时候虚拟空间买两年送三年,一直到2020年到期,等到过期的时候,就把这个博客挪个位置,至于还是使用cms系统还是使用静态博客,到时候做一个抉择。 2019年比较重要的一件事儿是驾照终于考了,《如何成为一个合格的逮虾户……

阅读全文 »

在 Kubernetes 上安装 Kong 和 Kong Enterprise

Kubernetes Ingress Controller for Kong 使用官方Kubernetes Ingress控制器安装Kong或Kong Enterprise。 通过README文件了解更多信息。要运行本地概念证明,请按照Minikube和Minishift教程进行操作。 Kubernetes Ingress Controller for Kong发布公告在Kong Blog上。 如有问题和讨论,请访问Kong Nation。 有关错误报告,请在GitHub上打开一个新问题。 通过 Google Cloud Platform Marketplace 安装 Kong 也许在Kubernetes上尝试Kong的最快方法是通过Google Cloud Platform Marketp……

阅读全文 »

Kong 无法使用 lua-openssl

目前在写一个kong的插件的时候想要使用一下 lua-openssl 的ecc加密功能,ecc是一个相对较新的加密算法(椭圆加密算法)。 lua-openssl 的项目地址为:https://github.com/zhaozg/lua-openssl 然后按照文档中的步骤,先安装: luarocks install openssl 然后直接根据 https://github.com/zhaozg/lua-openssl/blob/master/test/ec.lua 中的例子来使用: local openssl = require “openssl” local pkey = require “openssl.pkey” local nec = {‘ec’,”prime256v1″} loc……

阅读全文 »