分类

链接

2025 年 2 月
 12
3456789
10111213141516
17181920212223
2425262728  

近期文章

热门标签

新人福利,免费薅羊毛

数据库读写分离遇到的两个问题

简介   对于数据存储层高并发问题,最先想到的可能就是读写分离,在网站访问量大并且读写不平均的情况下,将存储分为master,slave两台,所有的写都路由到master上,所有的读都路由到slave上,然后master和slave同步。如果一台salve不够,可以加多台,比如一台master,3台slave。对于什么是读写分离,以及读写分离有什么好处,这里不再叙述,有兴趣的可以参考这里 。 在设计读写分离的时候,有几种解决方案: 1. 将读写分离放在dao层,在dao层, 所有的insert/update/delete都访问master库,所有的select 都...

DevOps, MySQL, 系统架构 暂无评论 阅读(577)

秒杀系统架构分析与实战

#0 系列目录# 秒杀系统架构 秒杀系统架构分析与实战 #1 秒杀业务分析# 正常电子商务流程 (1)查询商品;(2)创建订单;(3)扣减库存;(4)更新订单;(5)付款;(6)卖家发货 秒杀业务的特性 (1)低廉价格;(2)大幅推广;(3)瞬时售空;(4)一般是定时上架;(5)时间短、瞬时并发量高; #2 秒杀技术挑战# 假设某网站秒杀活动只推出一件商品,预计会吸引1万人参加活动,也就说最大并发请求数是10000,秒杀系统需要面对的技术挑战有: 对现有网站业务造成冲击 秒杀活动只是网站营销的一个附加活动,这个...

系统架构 暂无评论 阅读(514)

利用消息中间件和缓存实现简单的秒杀系统(一):理论

Redis是一个分布式缓存系统,支持多种数据结构,我们可以利用Redis轻松实现一个强大的秒杀系统。 我们可以采用Redis 最简单的key-value数据结构,用一个原子类型的变量值(AtomicInteger)作为key,把用户id作为value,库存数量便是原子变量的最大值。对于每个用户的秒杀,我们使用 RPUSH key value插入秒杀请求, 当插入的秒杀请求数达到上限时,停止所有后续插入。 然后我们可以在台启动多个工作线程,使用 LPOP key 读取秒杀成功者的用户id,然后再操作数据库做最终的下订单减库存操作。 当然,上面Redis也可以替...

系统架构 暂无评论 阅读(619)

利用阿里云快速安装最新版docker和加速docker pull

Docker在国内安装和Docker pull都很慢,马云爸爸给广大的docker爱好者提供了便利:不仅可以在各个linux操作系统快速安装最新版的Docker,还免费提供了一个docker加速器,让大家免于Q的阻碍。 接下来,我来说下Ubuntu16.04如何接受马云爸爸的优惠: 一.替换为阿里云源: 先在终端输入以下命令: <span class="hljs-built_in">sudo</span> vi /etc/apt/sources.list 1 然后删除sources.list里面的全部内容,替换为以下内容: deb http://mirrors<span class="hljs-preprocessor&quo...

.NET, DevOps, LINUX, 系统架构 暂无评论 阅读(576)

Linode KVM VPS安装Windows系统方法

从16年6月开始Linode(除日本东京)全面升级为KVM架构,内存也升级,也就是意味着可以安装Windows系统了!到16年11月份Linode日本东京2号数据中心(Tokyo 2)内测,升级为KVM架构!12月正式上线开卖,虽说东京新机房NTT线路的口碑相比旧机房KDDI线路始终差了点,但自从12月中旬开始东京1号旧机房KDDI线路开始严重抽风,部分地区甚至不如新机房NTT线路,东京1号旧机房在国内电信彻底是炸了!估计和最近一段时间国际海底光缆的故障有关,电信已经处理了好久了,也没搞好!联通还可以,东京2号新机房在国内电信和联通...

LINUX, 系统架构 暂无评论 阅读(789)

LVS+Keepalived实现高可用集群

操作系统平台:CentOS5.2 软件:LVS+keepalived LVS+Keepalived 介绍 LVS LVS是Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统。本项目在1998年5月由章文嵩博士成立,是中国国内最早出现的自由软件项目之一。目前有三种IP负载均衡技术(VS/NAT、VS/TUN和VS/DR); 十种调度算法(rrr|wrr|lc|wlc|lblc|lblcr|dh|sh|sed|nq)。 Keepalvied Keepalived在这里主要用作RealServer的健康状态检查以及LoadBalance主机和BackUP主机之间failover的实现 IP配置信息: LVS-DR-Master     ...

DevOps, 系统架构 评论(1) 阅读(1,209)

StackOverflow 的硬件

我更愿意把Stack Overflow看作是能够运行于大规模数据下,但本身并不算大规模的(running with scale but not at scale)。意思是我们的网站非常有效率,但至少目前为止,我们的规模还不够“大”。让我们通过一些数字来介绍Stack Overflow当前是一个怎样的规模吧。以下是一些核心的数字,来自于不久前在一整天(24小时)内的统计,准确说是2013年11月12日。这是一个典型的工作日,并且只统计了我们活动的数据中心,也就是我们自己的服务器。那些对CDN节点的请求和流量被排除在外,因为它们并不直接访问我们的网络。 ...

DevOps, News, 系统架构 暂无评论 阅读(1,128)

单点登录实现——基于OAuth2.0协议的接入方案

OAuth是目前广泛应用的开放接入标准,与OAuth1.0相比,OAuth2.0实现起来更加。OAuth的相关原理在互联网上有大量的资料可以查阅。以下是通过OAuth方式接入的说明: 第一步:应用接入申请 向中山市教育信息中心进行应用接入申请获得client_id和client_secret,这两个值是后续进行应用接口调用的关键内容 client_id: lejiaoyun client_secret: a1a0107555b948ada6348e39376ef52b 第二步:调用OAuth2.0的authorize接口 接口URL:http://202.96.186.112:8001/cas/oauth2.0/authorize 请求方式:GET/POST 调用参数: ...

.NET, DevOps, 系统架构 评论(1) 阅读(1,048)

支持高并发的IIS Web服务器常用设置

适用的IIS版本:IIS 7.0, IIS 7.5, IIS 8.0 适用的Windows版本:Windows Server 2008, Windows Server 2008 R2, Windows Server 2012 1、应用程序池(Application Pool)的设置:  General->Queue Length设置为65535(队列长度所支持的最大值) Process Model->Idle Time-out设置为0(不让应用程序池因为没有请求而回收) Recycling->Regular Time Interval设置为0(禁用应用程序池定期自动回收) 2、.Net Framework相关设置 a) 在machine.config中将 <processModel autoConfig="true" /> 改为...

.NET, DevOps, 系统架构 暂无评论 阅读(1,098)

单点登录SSO的实现原理:asp.net Forms身份验证详解(三)

在做网站的时候,都会用到用户登录的功能。对于一些敏感的资源,我们只希望被授权的用户才能够访问,这让然需要用户的身份验证。对于初学者,通常将用户登录信息存放在Session中,笔者在刚接触到asp.net的时候就是这么做的。当我将用户信息存在在Session中时,常常会遇到Session丢失导致用户无法正常访问被授权的资源,保持用户登录状态时的安全性问题,无休止的将用户导航到登录页面等莫名其妙的问题。 其实,在asp.net中,我们有更好的解决方案,那就是通过Forms身份验证,从而对用户进行授权,这种方法可以轻松...

.NET, 系统架构 暂无评论 阅读(807)