摆脱技术思维,转向产品思维——寻找“万能”IDC的苦恼
背景:近期在新产品的开发任务完毕后一直在为寻找好的IDC和优质的托管服务忙碌。需求源自于我们重点要解决之前老版产品面临的国内外用户訪问速度慢甚至连接不上的问题。
除去架构技术上使用高性能、可扩展的方案,针对眼下的并发量和数据量而言仅仅要能保证网络质量的优质就能够达到较好的用户体验。
首先我们的产品平台数据须要较强的一致性、高可用性。并且非常多是动态数据。
依据CAP理论,我们首先否决了分布式部署的方案,一是自己和团队对分布式技术的拿捏还欠缺,二是从开发周期上来说不同意我们有太复杂的研究和设计。所以就将目标转向对有强一致性要求的数据和服务採用集中式部署的方案,于是面对国内网络的互联互通问题,甚至面对国际网络的互通问题我们就得依赖第三方服务——好的IDC和托管服务。在经历了传统解决方式中的多线机房。BGP机房(一直怀疑不是真正的BGP机房)的測试验证。也经历了某国内著名厂商的CDN加速技术的測试验证后,发现不怎么靠谱,连接速度慢和连接不上的问题就连我们自己小规模測试都会遇见。
惆怅中细致研究了下各种托管服务的指标,听取了一些专业人士的回答建议,自己又动手计算预计了下网络质量,想了想公司对托管服务这块开支的容忍度(要知道BGP机房好贵的,CDN加速服务的价格更吓人,更可怕的是保障还没底)。
先说下BGP机房,从接触到的BGP机房来看都是对国内线路的优化支持。即使我们能把服务部署到国与国的骨干节点上,我们国家的出口带宽还有可怕的大墙说不准也会影响到网络质量,再加上3万多公里的海底光缆传播(比方到美国),各个节点的转发,理想情况下怎么着延迟也得到几百毫秒吧。况且还不敢保证国外终端用户的网络质量和服务。难免又会出现国外用户连接速度慢或者连接不上的让用户恨、让领导气的糟糕情况。至于CDN加速服务。据他们的技术人员说对TCP这一层的加速得定制,所曾经期也不敢十分保障。
在进一步惆怅之中我在想一个问题:难道我们不能把产品做成国内版和国际版,把这两部分数据和服务分开,就近部署server不就能够先解决问题嘛。我想大家见过不少类似的产品设计。比方evernote和印象笔记、网游的不同区服......。接着我赶紧向以前的产品人员了解了一下之前产品的使用背景,原来他们之前操心做成这样后会遇到这样的情况:比方一个美国人在在美国用国际版能够有非常好的体验,比方登录快,获取各种信息快(当然,server就在他们美国的优质机房里)。结果这美国人有一天来了中国,由于产品的登陆慢或者连接不上就会对我们的产品造成恶劣影响(事实上我想来中国的美国人都知道有VPN这个东西吧)。
对这个产品理念我是不大能认同的。不能把产品设计成为一种能满足各种极端情况的完美产品,大家想想咱自己訪问国外server上的东西慢不慢就知道了,你能够理解这样的情况吗?后期假设这样的情况非常多非常多了,说明我们的用户量也上来了,也有钱了咱再想别的办法。
另外,对于产品的设计来说我认为也值得分为国内版和国际版。我们如今的设计是全球人民都用相同的功能相同的client(当然不同语言),有句话是这样说的“产品没有国界,但用户却有国界”,如今我们的产品设计并没有对用户有一个具体的定位,往往是想到添加一个功能全部用户都得升级。国内用户还好说,还是和我们不同生活背景,文化背景的国外用户呢?
后话:如今我们还在进行着“万能”托管服务的測试。我也已经把我的想法转达给了相关人员。得到了部分的肯定可是也有部分不认同,总之我觉得在开发中假设能靠产品设计和业务调整避免一些复杂的技术情况是值得的。
摆脱技术思维,转向产品思维——寻找“万能”IDC的苦恼的更多相关文章
- 产品思维&技术思维&工程思维
产品思维 产品思维的起源是用户(或客户)价值.用户价值是通过技术手段以产品或服务的形态去解决用户的痛点,或带去爽点.毫无疑问,工程师在日常工作中应时刻关注并理清自己的工作与用户(或客户)价值的联系,并 ...
- 【用户分析-用户场景】这TM才是产品思维!
@奶牛Denny :很长一段时间里,市场推广/营销(Marketing)在中国似乎是一个大家很忌讳的词汇.市场推广无非就是夸大包装,炒作一下,卖卖情怀——很多人都是这么觉得的,因为确实有一部分急功近利 ...
- 1.用互联网的产品思维打造一本app后端的书
刚刚接触app后端,是做完adidas中国的官方商城的时候,那时不清楚app后端应该怎么架构,只能摸着石头过河,网络上只有一些零散的资料,遇到问题,只能不断地搜索,思考,务必找到解决问题的方法. 在从 ...
- 做IT项目管理也需要具备产品思维
不知道大家有没有听过大胡子姜志辉老师的公开课,我自己认为讲的还是不错的. 因为本身大胡子老师就是一个IT行业的人士,自己还经历了程序员.架构师.项目经理.敏捷教练.产品经理.公司持有人等多个角色.所以 ...
- [转]一文读懂《梁宁·产品思维30讲》最精华内容(含全套PPT)
http://chuansong.me/n/2294260949029 8 年前,我的主业是产品经理,产品思维改变了我认识世界的方式,让我明白司空见惯的设计,也有其底层逻辑. 几年后我接触培训.运营自 ...
- 技术思维VS管理思维
以下为技术思维与管理思维的不同 在日常的工作中,会出现身兼两职 开发和项目经理 的情况,在此就要学会游刃有余的切换角色,方能一人分身二角 角色转换本质上是思维转换.思维决定一个人的行为,项目经理不像项 ...
- 《梁宁·产品思维30讲》课程学习笔记(内含全套音频+ppt资料
科技进步.产品迭代.公司演化.组织变迁……不变的是用户的情绪和人性. 那些信奉“用户驱动”的人,从普通人变成了行业大佬,建立了自己的世界.乔布斯.马化腾.马云.雷军.张小龙.周鸿祎.傅盛……这些改变世 ...
- 做一个有产品思维的研发:Scrapy安装
每天10分钟,解决一个研发问题. 如果你想了解我在做什么,请看<做一个有产品思维的研发:课程大纲>传送门:https://www.cnblogs.com/hunttown/p/104909 ...
- 做一个有产品思维的研发:部署(Tomcat配置,Nginx配置,JDK配置)
每天10分钟,解决一个研发问题. 如果你想了解我在做什么,请看<做一个有产品思维的研发:课程大纲>传送门:https://www.cnblogs.com/hunttown/p/104909 ...
随机推荐
- placement new和delete
注意,我们无法改变new和delete操作符. 但是我们可以重载来里面的operator new 和 operator delete 方法,这个方法是被new操作符调用的,调用之后获得地址,会继续用构 ...
- vue.2.0-路由
vue2.0 路由: http://router.vuejs.org/zh-cn/index.html 基本使用: 1. 布局 <router-link to="/home" ...
- java 文件读写demo
分析错误日志: import java.io.BufferedReader; import java.io.FileReader; import java.io.IOException; public ...
- HTTP 各种特性应用(二)
一.Cookie 通过 Set-Cookie 设置. 下次浏览器请求就会带上. 键值对,可以设置多个. Cookie 属性 max-age 和 expires 设置过期时间 Secure 只在 htt ...
- Sql Server通用分页存储过程
Sql Server2005通用分页存储过程 CREATE PROCEDURE [dbo].[Common_GetPagedList] ( @TableName nvarchar(100), --表名 ...
- cf 865 B. Ordering Pizza
B. Ordering Pizza It's another Start[c]up finals, and that means there is pizza to order for the ons ...
- 服务器无法远程管理客户端”计算机配置"解决方法
1.确认是否可ping 通 如无法ping通, 在入门规则中找到“文件和打印机共享(回显请求-ICMPv4-In)”,设定为启用(配置文件为:域) 2. 打开139端口 1.2在防火墙中设置如下:
- 利用canvas画一个实时时钟
先放一张效果图: 下面是源代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"& ...
- Vue数据驱动表单渲染,轻松搞定form表单
form-create 具有动态渲染.数据收集.校验和提交功能的表单生成器,支持双向数据绑定.事件扩展以及自定义组件,可快速生成包含有省市区三级联动.时间选择.日期选择等17种功能组件. Github ...
- tensorflow学习之路---简单的代码
import numpyimport tensorflow as tf #自己创建的数据x_data = numpy.random.rand(100).astype(numpy.float32)#创建 ...