摘要:
背景 在业务发展到一定阶段之后,任何因故障而导致的服务中断都会带来巨大的损失。为了提高系统的伸缩能力与高可用能力,我们都不断的在努力消除系统单点瓶颈。如使用应用集群是为了解决服务层的单点问题,使用主从数据库是为了解决数据库层面的单点问题。 尽管我们使用微服务架构,很好的解决了服务治理与监控问题,使得 阅读全文
摘要:
基本概念 事务 由多个计算任务构成的一组具有明确边界的工作集合。事务当中可能包括接口访问、网络通信、数据获取和处理。严格的事务实现应该具备具有原子性、一致性、隔离性、持久性四个特性。 原子性(Atomicity):一个事务中的任务要么全部完成,要么全部失败。没有中间状态。 隔离性(Isolation 阅读全文
摘要:
在Redis的使用当中,持久化一直是一个比较重要的话题,很多同学在使用Redis的过程中对持久化策略如何选择、如何配置持久化存在疑问。本文试图对Redis的持久化做比较系统地分析比较,以期达到能够正确理解Redis的持久化,并且能够结合应用实际选择合理的持久化机制的目的。 1. 背景知识 持久化是一 阅读全文
摘要:
背景 在最近的项目中,遇到这样一个场景:合作方开发H5页面并部署在合作方的服务器上,但页面中嵌入了我方的SDK,SDK会直接调用我方的接口,如下图: 但是控制台中却会收到如下报错: Access to XMLHttpRequest at 'http://example1.com/test' from 阅读全文
摘要:
背景概述 用户成长体系通俗的来讲就是会员经验金币系统,通过量化的方式来衡量用户对平台的忠诚度、共享度等,同时提供一系列的激励机制,刺激用户留在平台上。简单来讲,成长体系的作用就是“获客”、“活客”。 对于用户来说,一个好的用户成长体系能够提升用户的主动活跃,用户也可以从体系中获得成就感、特权等利益。 阅读全文
摘要:
概述 在网络编程中,无论使用netty还是其它的socket通讯框架,都是通过TCP或UDP传输二进制流。发送方把要发送的对象转化成二进制流发送出去;接收方把接收到的二进制流转化为对象进行处理。 为了能让接收方和发送方能对同一个二进制流有相同的认识,双方必须提前约定好一个协议,即对象如何转化为二进制 阅读全文