10 我是大愚

尚未进行身份认证

我要认证

我是大愚,PHP工程师,专注于服务端技术。热爱开源,在GitHub创建了一个PHP聚合支付的sdk项目,目前是此类最多star拥有的项目(Payment)。希望遇见跟多的同行互相学习进步。

等级
TA的排名 7k+

走进Golang之Context的使用

我们为什么需要 Context 的呢?我们来看看看一个 HTTP 请求的处理:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qnXwPD7i-1596535371234)(https://dayutalk.cn/img/20200802/00.jpeg)]例子大概意思是说,有一个获取订单详情的请求,会单独起一个 goroutine 去处理该请求。在该请求内部又有三个分支 goroutine 分别处理订单详情、推荐商品、物流信息;每个分支可能又需要单独调用DB、Redis等

2020-08-04 18:04:16

走进Golang之Channel的数据结构

上篇文章讲了 channel 的基本使用,讲了一些使用时需要注意的事项,本文将重点介绍 channel 中的两个数据结构:循环队列 与 双端链表 。channel 的需求描述为了理解这些...

2020-06-27 11:03:00

#4 大愚瞎说:碎片化

碎片化让人变得更焦虑,对于这一点我的感受越来越明显了!不知道从几时起,很多的创业点子都是讲要抢占用户的碎片化时间。像购物、听歌、玩游戏可以抢占碎片化时间,因为它是即来即走的。你不需要深度...

2020-06-27 11:03:00

Golang技巧之默认值设置的高阶玩法

最近使用 GRPC 发现一个设计特别好的地方,非常值得借鉴。我们在日常写方法的时候,希望给某个字段设置一个默认值,不需要定制化的场景就不传这个参数,但是 Golang 却没有提供像 PHP、Python 这种动态语言设置方法参数默认值的能力。低阶玩家应对默认值问题以一个购物车举例。比如我有下面这样一个购物车的结构体,其中 CartExts 是扩展属性,它有自己的默认值,使用者希望如果不改变默认值时就不传该参数。但是由于 Golang 无法在参数中设置默认值,只有以下几个选择:提供一个初始化函数,所

2020-06-24 11:14:35

Golang技巧之默认值的设置

最近使用 GRPC 发现一个设计特别好的地方,非常值得借鉴。我们在日常写方法的时候,希望给某个字段设置一个默认值,不需要定制化的场景就不传这个参数,但是 Golang 却没有提供像 PH...

2020-06-24 10:28:00

#3 大愚瞎说

推荐 《硅谷钢铁侠:埃隆•马斯克的冒险人生》花了11个小时读完了这本书,总结一下读后感!最大的感受是,有的时候人就是得认命(基因这件事),绝大部分人就算有马斯克的雄心壮志,你也没他的精力...

2020-06-24 10:28:00

走进Golang之Channel的使用

对于 Golang 语言应用层面的知识,先讲如何正确的使用,然后再讲它的实现。channel 是什么Don't communicate by sharing memory, sh...

2020-05-18 10:01:00

大愚瞎说 #2

我们的机会在哪?所有的生意都被巨头干完了,为什么现在这些大佬30岁不到就事业有成了?因为生的时代好!在到处是机会的时代,只要敢想敢干都有一席之地。我们天天都在不停的说:机会总是有的,是的...

2020-05-18 10:01:00

Golang的Debug工具delve介绍

delve 的汉语意思是:钻研、探索;用这个来命名一个debug工具还是非常的形象。本文主要介绍该工具的安装与常用使用方法。是一个step-by-step的文章。目标是帮助大家学会如何使...

2020-05-11 11:40:00

[Skr-Shop]购物车之架构设计

来还债了,希望大家在疫情中都是平安的,回来的时候公司也还在!

2020-04-06 14:18:14

再也不见2019,欢迎2020

题图中的话出自 丰子恺的《不宠无惊过一生》 ,这这句是一种生活的境界,如若真能做到,算是活到了人生至高境界!回顾 2019 年,犹如东逝之水,奔流而不复回;用此为文总结一下点点滴滴,以此...

2019-12-29 17:14:43

[Skr-Shop]购物车设计之需求分析

skr shop是一群底层码农,由于被工作中的项目折磨的精神失常,加之由于程序员的自傲:别人设计的系统都是一坨shit,我的设计才是宇宙最牛逼,于是乎决定要做一个只设计不编码的电商设计手册。项目地址:https://github.com/skr-shop/manuals对于一个电商来讲,购物车是整个购买流程最重要的一步。因为电商发展到今天购物车不仅仅只是为了完成打包下单的功能;也是收藏、对...

2019-12-10 15:11:25

走进Golang之运行与Plan9汇编

本文目录速览:Golang的运行环境内存操作系统、CPU、内存互相配合Go程序的调用规约函数在栈上的分布Go的调用实例Go的汇编plan9查看go应用代码对应的翻译函数逃逸分析传值还是传指针总结通过上一篇走进Golang之汇编原理,我们知道了目标代码的生成经历了那些过程。今天我们一起来学习一下生成的目标代码如何在计算机上执行。以及通过查阅 Golang...

2019-11-27 11:10:18

走进Golang之编译器原理

为了学好Golang底层知识装逼,折腾了一下编译器相关知识。下面的内容并不会提升你的生产技能点,但可以提高你的装逼指数。请按需进入!本文目录速览:认识 go build编译器原理词法分析语法分析语义分析中间码生成代码优化机器码生成总结认识 go build当我们敲下 go build 的时候,我们的写的源码文件究竟经历了哪些事情?最终变成了可执行文件。这个命令...

2019-11-14 09:49:16

高并发架构的CDN知识介绍

对一次网络请求过程的了解程度,一是展现你的专业知识;二是深刻的理解,让你在大型网站架构中做出更适合、可靠的架构。而DNS是这一切的出发点,本文结合一张常用架构图,来描述一下这个过程。部署架构大型的web服务,我们的部署架构一般如下图。先上图再解释。这里来解释下,为什么要这样架构。首先客户端的请求会通过 DNS 获取到对应的服务器IP(实际上是LB的ip地址),这一层会有 DNS的负载均衡...

2019-04-29 18:20:18

高并发架构的CDN知识介绍

对一次网络请求过程的了解程度,一是展现你的专业知识;二是深刻的理解,让你在大型网站架构中做出更适合、可靠的架构。而DNS是这一切的出发点,本文结合一张常用架构图,来描述一下这个过程。部署架构大型的web服务,我们的部署架构一般如下图。先上图再解释。这里来解释下,为什么要这样架构。首先客户端的请求会通过 DNS 获取到对应的服务器IP(实际上是LB的ip地址),这一层会有 DNS的负载均衡...

2019-04-29 18:19:14

coder,你会设计交易系统吗(实干篇)?

通过 上篇文章 的分析,我们已经明确了这个系统要干些什么。接下来的都是实打实的干货。这些内容认真阅读掌握后,相信你能够以此为基础设计一个维护性好、扩展性好的交易系统。数据库设计数据的设计是按照:交易、退款、日志 来设计的。对于上面说到的对账等功能并没有。这部分不难大家可以自行设计,按照上面讲到的思路。主要的表介绍如下:pay_transaction 记录所有的交易数据。pay_trans...

2019-03-22 19:33:02

coder,你会设计交易系统吗(概念篇)?

文中我们从严谨的角度一步步聊到支付如何演变成独立的系统。内容包括:系统演进过程、接口设计、数据库设计以及代码如何组织的示例。若有不足之处,欢迎讨论共同学习。从模块到服务我记得最开始工作的时候,所有的功能:加购物车/下单/支付 等逻辑都是放在一个项目里。如果一个新的项目需要某个功能,就把这个部分的功能包拷贝到新的项目。数据库也原封不动的拷贝过来,稍微根据需求改改。这就是所谓的 单体应用 时代,...

2019-03-11 14:23:12

coder,你会设计交易系统吗(概念篇)?

文中我们从严谨的角度一步步聊到支付如何演变成独立的系统。内容包括:系统演进过程、接口设计、数据库设计以及代码如何组织的示例。若有不足之处,欢迎讨论共同学习。从模块到服务我记得最开始工作的时候,所有的功能:加购物车/下单/支付 等逻辑都是放在一个项目里。如果一个新的项目需要某个功能,就把这个部分的功能包拷贝到新的项目。数据库也原封不动的拷贝过来,稍微根据需求改改。这就是所谓的 单体应用 时代,...

2019-03-11 14:23:02

线上大量CLOSE_WAIT分析

这一次重启真的无法解决问题了:一次 MySQL 主动关闭,导致服务出现大量 CLOSE_WAIT 的全流程排查过程。近日遇到一个线上服务 socket 资源被不断打满的情况。通过各种工具分析线上问题,定位到问题代码。这里对该问题发现、修复过程进行一下复盘总结。先看两张图。一张图是服务正常时监控到的 socket 状态,另一张当然就是异常啦!图一:正常时监控图二:异常时监控从图中的表现...

2018-12-13 09:35:31

查看更多

CSDN身份
  • 博客专家
勋章 我的勋章
  • GitHub
    GitHub
    绑定GitHub第三方账户获取
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!
  • 勤写标兵Lv2
    勤写标兵Lv2
    授予每个自然周发布4篇到6篇原创IT博文的用户。本勋章将于次周周三上午根据用户上周的博文发布情况由系统自动颁发。
  • 学习力
    学习力
    《原力计划【第二季】》第一期主题勋章 ,第一期活动已经结束啦,小伙伴们可以去参加第二期打卡挑战活动获取更多勋章哦。
  • 分享精英
    分享精英
    成功上传11个资源即可获取