自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

转载 以电商网站为例,谈大型分布式架构设计与优化

本文大纲: 目录 一、使用电商案例的原因 二、电商网站需求 三、网站初级架构 四、系统容量预估 五、网站架构分析 六.网站架构优化 本文主题为电商网站架构案例,将介绍如何从电商网站的需求,到单机架构,逐步演变为常用的、可供参考的分布式架构原型。除具备功能需求外,还具备一定的高性能、高可用、可伸缩、可扩展等非功能质量需求(架构目标)。 根据实际需要,进行改造、扩展、支持千万PV,是...

2019-05-24 15:31:45 874

转载 PHP消息队列实现及应用:队列处理订单系统和配送系统

解耦案列:队列处理 订单系统和配送系统 我们在前面了解过消息队列的使用场景:http://blog.csdn.net/github_26672553/article/details/78194336 这里,我们要来处理其中一个场景:系统的解耦。 在电商项目中,当客户提交了一个订单之后,客户在个人中心可以看到订单处于配送中。 这个时候就要参与进来一个系统,叫做『配送系统』。如果我们在做架构...

2019-05-23 09:32:50 1709

转载 浅析B2C电商产品中的“库存”概念

电商产品最复杂的模块莫过于“后台模块”,而后台模块中较为复杂的又莫过于“库存管理”,而一般来讲B2C电商产品中的库存包括七大部分,分别是:可销售库存、订单占用库存、不可销售库存、锁定库存、调配占用库存、调配中库存、虚库存。而这几个的关系是这样的: 总库存=可销售库存+订单占用库存+不可销售库存+锁定库存+调配占用库存-调配中库存-虚库存 关于这个关系,下边会详细说。 可销售库存 可销售...

2019-05-23 09:31:30 936

转载 redis、kafka、rabittMQ对比 (转)

本文不对三者之间的性能进行对比,只是从三者的特性上区分他们,并指出三者的不用应用场景。 redis 消息推送(基于分布式 pub/sub)多用于实时性较高的消息推送,并不保证可靠。其他的mq和kafka保证可靠但有一些延迟(非实时系统没有保证延迟)。 redis-pub/sub断电就清空,而使用redis-list作为消息推送虽然有持久化,但是又太弱智,也并非完全可靠不会丢。 另外一点,r...

2019-05-23 02:30:51 4286

转载 浅谈秒杀系统架构设计

秒杀是电子商务网站常见的一种营销手段。 原则 不要整个系统宕机。 即使系统故障,也不要将错误数据展示出来。 尽量保持公平公正。 实现效果 秒杀开始前,抢购按钮为活动未开始。 秒杀开始时,抢购按钮可以点击下单。 秒杀结束后,按钮按钮变成秒杀已结束。 技术攻关 短时间内的大访问量对现有网站业务造成的冲击。 秒杀是一个网站营销的一个附加活动,时间短,并发量大。 如果和网...

2019-05-23 02:16:21 144

转载 Redis常见7种使用场景(PHP实战)

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。 本篇文章,主要介绍利用PHP使用Redis,主要的应用场景。 String 简单字符串缓存实战 $redis->connect('127.0.0.1', 6379); $strCacheKey = 'Test_bihu'; //SET 应...

2019-05-23 01:33:07 1352

转载 电商平台-redis缓存在商品中的设计与架构

说明:Java开源生鲜电商平台-redis缓存在商品中的设计与架构。 1. 各种计数,商品维度计数和用户维度计数   说起电商,肯定离不开商品,而附带商品有各种计数(喜欢数,评论数,鉴定数,浏览数,etc),Redis的命令都是原子性的,你可以轻松地利用INCR,DECR等命令来计数。 商品维度计数(喜欢数,评论数,鉴定数,浏览数,etc)    采用Redis 的类型:Hash. 如果...

2019-05-23 18:39:29 2389

转载 开发后台项目的套路是什么?

需求评估 产品经理、开发工程师、测试工程师,组织需求评审会议,讲解本次的开发功能。 开发需分析: 是否涉及到其他开发部门? 是否需要创建数据库/数据表? 本次需要做多少页面? 有多少功能点,哪些是功能难点? 根据以上,给出开发工期(X/人/天)。 跨部门沟通 沟通确定后,沟通结果以邮件的形式确认抄送相关Leader。 创建/更改 数据库 ...

2019-05-23 10:29:58 454

转载 MySQL5.6 数据库主从(Master/Slave)同步安装与配置详解

安装环境 操作系统 :CentOS 6.5 数据库版本:MySQL 5.6.27 主机A:192.168.1.1 (Master) 主机B:192.168.1.2 (Slave) 这里强调的数据库的版本,是因为MySQL在5.6之前和之后的安装方式是不一样的。 本人在进行配置的时候,也遇到了这个坑,这里提前说明,希望大家不要采坑。 注:这里有一篇CentOS安装MySQL的文章,在这里...

2019-05-23 09:34:03 187

原创 微信支付小结

一.公众平台设置网页授权域名 方案一: 在做项目集成微信登录以及微信支付的时候,都需要进行用户授权。这个授权的流程可以简单描述为: 1. 用户从我们的应用触发需要授权的操作,比如点击微信登录; 2. 应用收到这种用户请求后,将用户重定向到微信提供的一个授权页面: 3. 用户通过微信扫码(PC端授权,上边左图)或者点击确认按钮(移动端授权,上边右图)告...

2019-05-23 09:31:05 565

转载 网站架构的伸缩性设计

网站开发初期,我们习惯性把所有代码都写到一个项目中。 前台、后台、缓存、数据库、静态资源... 等等。 网站系统物理分离 慢慢的系统会原来越大,很显然需要面对大量用户的高并发访问和存储海量数据。 很多用户的请求,不可能在一台服务器上完成。 很多缓存数据,数据库数据,也不可能在一台服务器上完成。 这是,网站的伸缩性架构就变得尤为重要。 如下图。 原理 我们通过多台...

2019-05-23 02:22:46 158

转载 系统的讲解 - PHP 接口签名验证

概览 工作中,我们时刻都会和接口打交道,有的是调取他人的接口,有的是为他人提供接口,在这过程中肯定都离不开签名验证。 在设计签名验证的时候,一定要满足以下几点: 可变性:每次的签名必须是不一样的。 时效性:每次请求的时效性,过期作废。 唯一性:每次的签名是唯一的。 完整性:能够对传入数据进行验证,防止篡改。 下面主要分享一些工作中常用的加解密的方法。 常用验证 举例:/api/lo...

2019-05-23 02:04:37 489

转载 系统的讲解 - PHP WEB 安全防御

常见漏洞 看到上图的漏洞是不是特别熟悉,如果不进行及时防御,就会产生蝴蝶效应。 往下看,可能会找到你要的答案。 SQL注入攻击 定义 SQL注入攻击是通过WEB表单提交,在URL参数提交或Cookie参数提交,将怀有恶意的“字符串”,提交给后台数据库,欺骗服务器执行恶意的SQL语句。 案例 //以用户登录为例,当验证用户名和密码是否正确时 $sql = "SELECT * FR...

2019-05-23 01:50:45 205

转载 系统的讲解 - SSO单点登录

概念 SSO 英文全称 Single Sign On,单点登录。 在多个应用系统中,只需要登录一次,就可以访问其他相互信任的应用系统。 比如:淘宝网(www.taobao.com),天猫网(www.tmall.com),聚划算(ju.taobao.com),飞猪网(www.fliggy.com)等,这些都是阿里巴巴集团的网站。在这些网站中,我们在其中一个网站登录了,再访问其他的网站时,就...

2019-05-23 01:40:57 171

转载 为什么要在服务层设计读写分离?

作者:陈叶皓(携程邮轮研发部软件架构师) 我的架构师同事问我:“为什么你总说要在服务层实现读写分离,我们已经在数据库实现了读写分离,是不是已经够用”。以下是我的解释, 在做网站性能优化的时候,我常常忘记还有数据库读写分离这件事,因为数据库读写分离,对性能带来的提高太有限了,实际上,就是一倍(一台服务器变成两台服务器)。当你的网站业务发展,如果从无到有地使用数据库读写分离,提高了一倍的服务能力,...

2019-05-22 23:56:44 366

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除