随笔分类 - 总结
工作中遇到问题的总结
摘要:应用场景 适用于发展中的大中型公司且有多条产品线,这样才能更好的复用,避免做了很多没用的,造成资源浪费。 解决的问题 避免重复建设,让系统尽量抽象,可配置,不依赖具体的业务,这样有新的产品线成立可快速接入。 遇到的问题 1. 历史的数据的迁移 在抽象需求的时候要考虑历史数据的兼容,后期好做迁移。对于
阅读全文
摘要:最近本人负责对营销系统中出现的接口响应慢的情况进行优化,以下是根据我在营销系统的经验。本文旨在总结通用的经验,提供思路,而不涉及具体的技术实现。 优化的效果如下: 针对于本次集中优化的效果很明显,接口用时降低50%-90%,效果显著。 发现问题 系统在上线之前压测也没问题,刚上线的时候运行良好,这不
阅读全文
摘要:背景 在公司的综合支付系统中负责搭建基础框架的, 主要包括: 搭建 RabbitMQ 服务,采用镜像模式以提供稳定可用的服务; HAProxy 采用主备的模式,由腾讯云切换; 封装 C++ 客户端提供给订单服务/账务服务等服务调用; 把客户端写入 RabbitMQ 的数据同步到 ElasticSea
阅读全文
摘要:在业务系统中会出现对接外部服务的场景,可能需要对接不同公司的接口,而且功能相似。比如: 支付网关调用支付渠道商的支付类接口 登录服务需要调用其他公司的登录授权相关接口 广告投放服务需要把用户的注册、完件、授信信息回传给广告商 在这类渠道接入服务中需要对接的外部服务功能、协议、参数是相似的,如何最大化
阅读全文
摘要:在支付金融事业部工作的这段时间对接了很多支付渠道,中间用到了很多验证数据安全的方式,特意总结记录一下。 MD5 在调用别的渠道进行支付或者渠道商回调的时候,MD5 (Message-Digest Algorithm 5) 是最常见的一种验签方式。它是一 hash 函数,能产生128 bit 的 ha
阅读全文
摘要:最近重构了ID服务,顺便来写个总结。重构的原因无非是两种: 1. 新增需求不方便,可能会对原有的服务造成不确定的影响 2. 提升性能 我们现在的服务开始设计的时候并没有考虑很多,当初只是简单的想生成唯一的订单号就行了,所以并没有进行很好的设计。后来又增加了退款单号,这个也很简单,请求里加个cmd,服
阅读全文
摘要:以前的订单服务和代付服务都是自己生成订单ID,这样是很不好的。先不说设计的耦和,一个很大的问题是多机器多进程部署的时候造成订单号重复,那么就必须重试,造成订单服务流程的混乱。如果需要其他格式或者长度的单号又得在代码中重新生成一次,很不利于后期维护。于是就由我来做一个专门生成唯一ID的服务。 设计目标
阅读全文
摘要:最近公司遭到黑客的两次攻击造成不小的损失,刚好没什么事就来记录分析一下怎么避免或者减小攻击造成的损失。首先来介绍下公司的业务吧,公司主要是做电话充值卡,加油卡充值等方面的业务,算是华南地区最大的充值中间商,日流水在1亿左右。 第一次被黑可以说是技术经验不足,不够小心导致的。黑客伪造了一条支付请求,把
阅读全文
摘要:对于C++用户来说,用Java最大的感受就是不用操心内存了,但完全自动的回收机制反而让我感觉不安,万一回收失败了,我要调试的就不仅仅是我的代码了,还有虚拟机呀。于是看了Java虚拟机的书和相关的资料,总结一下相关的知识。 对象还在吗? 1)引用计数算法 基本思路是为每个对象加一个计数器,记录指向这个
阅读全文
摘要:首先要说的是本文所说的缺陷并非指指针悬空或野指针造成的程序崩溃,我觉得那些问题只要小心的处理,是可以避免的。本文所说的缺陷是指指针对C++对象封装的破坏。 想到写这个话题是因为看到有人问了一个问题“基类的私有成员会不会被子类继承?”,我认为是会的,因为C++标准保证“出现在子类中的基类子对象要保持其
阅读全文
摘要:坐骑系统开发完了,在内测中没出现什么问题,写个总结。 在和策划确定需求后我把设计文档拿给老大看,他给的意见是坐骑的数据没必要在玩家登陆的时候全部记载,因为他可能在打架/刷野之类的,这时候坐骑的数据完全没用,可以等到使用坐骑的时候再加载数据。 于是我就设计了三次缓冲的方式: 玩家上线的时候不加载坐骑的
阅读全文
摘要:游戏开发完成后如果需要在别的平台上线,就需要接第三方的SDK。这主要包括登陆和支付者两部分,我当时负责服务端程序的开发。在我所接的这些SDK里,不管是大公司像小米商城、360平台、华为,还是小公司像机锋、当乐,它们登陆和支付的基本流程是一样的,都是采用OAuth 2.0 协议标准授权流程,当然不同的
阅读全文

浙公网安备 33010602011771号