摆脱技术思维,转向产品思维——寻找“万能”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 ...
随机推荐
- 如何解决本地仓库和远程仓库的冲突(Conflict)
Background: 我有一个github仓库管理我的代码,我将这个仓库的代码clone到我的工作电脑和私人电脑本地方便我上班和在家时都可以对我的代码进行更新. 一天,我在家修改过代码之后并未提交, ...
- 从头认识java-18.2 主要的线程机制(5)-守护线程与非守护线程
这一章节我们来讨论一下守护线程与非守护线程. 1.什么是守护线程?什么是非守护线程? 非守护线程:Java虚拟机在它全部非守护线程已经离开后自己主动离开. 守护线程:守护线程则是用来服务用户线程的,假 ...
- CentOS 配置防火墙操作实例(启、停、开、闭port)
CentOS 配置防火墙操作实例(启.停.开.闭port): 注:防火墙的基本操作命令: 查询防火墙状态: [root@localhost ~]# service iptables status& ...
- LINUX设备驱动程序笔记(一)设备驱动程序简单介绍
<一>:设备驱动程序的作用 从一个角度看,设备驱动程序的作用在于提供机制,而不是策略. 在编写驱动程序时,程序猿应该特别注意以下这个基本概念:编写訪问硬件的内核代码时,不要给用户强加不论什 ...
- 杭电1425 sort
Problem Description 给你n个整数.请按从大到小的顺序输出当中前m大的数. Input 每组測试数据有两行,第一行有两个数n,m(0<n,m<1000000).第二行 ...
- CoAP与物联网系统
CoAP简单介绍 引自维基百科上的介绍,用的是谷歌翻译... 受约束的应用协议(COAP)是一种软件协议旨在以很easy的电子设备.使他们能够在互联网上进行交互式通信中使用. 它特别针对小型低功率传感 ...
- 如何保证对象线程内唯一:数据槽(CallContext)
CallContext 是类似于方法调用的线程本地存储区的专用集合对象,并提供对每个逻辑执行线程都唯一的数据槽.数据槽不在其他逻辑线程上的调用上下文之间共享.当 CallContext 沿执行代码路径 ...
- COGS 577 蝗灾 线段树+CDQ分治
第一次写cdq分治 感谢hhd<y 这20亿对CP的指导(逃) 其实 就是 递归看左半部分对右半部分的贡献 (树状数组写挂了--临时改的线段树[大写的尴尬]) //By SiriusRen ...
- 2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 (B,F,L,M)
B. Train Seats Reservation You are given a list of train stations, say from the station 1 to the sta ...
- Ubuntu16.04安装官方Firefox 火狐浏览器 延长支持版(Extended Support Release, 简称“ESR”)
Ubuntu16.04安装官方Firefox 火狐浏览器 延长支持版(Extended Support Release, 简称“ESR”) 延长支持版本(Extended Support Releas ...