snoopyxdy的博客

不要用执行上的勤奋来掩盖思考上的懒惰


  • 首页

  • 归档

一次心酸的优化

发表于 2020-01-17 | 分类于 golang

最近机票业务有一个比较棘手的需求,就是从供应商获取资源,要从各个供应商的资源中pk出价格最有优势的政策。乍看上去,这样的需求很简单,和之前做的酒店,景点等等价格PK类似么,无非就是从原始数据中,获取最具有优势的价格而已,然而就是这么一个任务,前前后后坑了半个月。

阅读全文 »

2019-qcon-openresty

发表于 2019-10-18 | 更新于 2019-10-24 | 分类于 network

2019qcon上海,有幸去分享了一次公司基于openresty开发的业务融合网关,之前练了好多次,感觉还不错,分享的时候感觉时间过的很快。

p1

阅读全文 »

二层,三层交换机(转)

发表于 2019-09-21 | 更新于 2019-10-24 | 分类于 network

二层交换机:二层交换技术是发展比较成熟,二层交换机属数据链路层设备,可以识别数据包中的MAC地址信息,根据MAC地址进行转发,并将这些MAC地址与对应的端口记录在自己内部的一个地址表中。
具体如下:

阅读全文 »

etcdV2的basicauth开启

发表于 2019-06-24 | 更新于 2019-10-25 | 分类于 node.js

etcd v2 用起来比较简单,开启权限同样也是比较简单。http就可以开启,注意:v3和v2的权限系统是分开的。详细文档链接

阅读全文 »

golang反射入门一例

发表于 2019-02-05 | 更新于 2019-11-08 | 分类于 golang

Go是一个强类型的静态编程语言。然而,一些Go的特性让它看起来又像是一门动态语言。例如,如果你不确定你接收的参数的类型,你可以使用interface来接收所有类型的参数传递。
记住只有interface是有reflect属性的。

我们注意到interface允许Go实现多态。没有任何一种类型是特别需要强调的。可以是string int64 float32 甚至是集合(array/map)。但计算机运行这些代码时候,reflect帮助检查,修改其自身的结构与行为。这个过程允许我们知道对象的类型以及内存在运行时的结构。

我们为什么需要reflect?

允许提前定义参数类型(通常发生在暴露的API上)

函数能根据传参动态执行

reflect的缺点

  • 影响代码可读性
  • 屏蔽了代码编译时的错误检查。作为动态语言,Go的编译器可以提前检测数据类型的错误,在编译的时候。当数据在interface中没有特性指明类型的时候,服务器会有在运行代码时候出现panic的风险
  • 降低了整体的性能。使用reflect需要服务端去做额外的工作去获取参数的值以及具体的类型,因此,尽量避免在一些很重要的参数上使用interface
阅读全文 »

openresty2018大会感想

发表于 2018-11-23 | 更新于 2018-11-29 | 分类于 lua

2018.11.23,我有幸作为演讲嘉宾参加了openresty2018年的大会,前前后后我听了一天半的时间,感觉非常棒,感谢各位讲师带来的满满的干货。想着写一篇博客来记住和沉淀这次分享大会。

早上6点从苏州驱车赶往杭州滨江区的网易大厦,好在时间早,路上路况非常不错,在8点30分的时候准时签到,还无耻的蹭了一顿网易的免费早餐,真是不错哦。


阅读全文 »

qcon2018上海站

发表于 2018-10-21 | 更新于 2018-11-26 | 分类于 其他

2018.10我参加了上海qcon活动,一大早到达会场已经人山人海了,转了一圈,挑了后移动互联网时代会场,打算开始今天的第一听。

阅读全文 »

node.js实战之坑

发表于 2018-06-14 | 更新于 2018-11-26 | 分类于 javascript

最近做了一个node.js的中间层项目,为了极致的性能,我们打算尽量少用第三方类库,连HttpServer我们都用原生的来做,没有使用Expressjs。

阅读全文 »

记录一个微信白屏的故障排查

发表于 2018-03-13 | 更新于 2018-11-26 | 分类于 javascript

记录一个微信白屏的故障排查

前几天,运维小伙伴晚上突然打电话给我,说公司的一个重要下单的微信页面白屏了,打不开了,让我赶紧看下。

阅读全文 »

openresty实现websocket的全双工接收推送

发表于 2018-02-01 | 更新于 2018-11-26 | 分类于 lua

很早就知道春哥有这个 lua-resty-websocket 的包了,可以让openresty具备websocket的通信能力,一直也以为这个包和node.js或者golang等其他语言的websocket包一样好用,可以很容易的实现全双工的操作,单播,多播,广播等功能。

阅读全文 »
12…29

snoopyxdy

289 日志
13 分类
23 标签
© 2020 snoopyxdy
由 Hexo 强力驱动 v3.8.0
|
主题 – NexT.Muse v6.5.0