大数据&云计算一切为了微服务,我们从PHP迁移到了Go
起初 , 咱们认为坚持一门了解的言语是负责任的工作——咱们是一个小团队 , 却已经冒了两次险:切换到微效劳和彻底重写咱们的 Web 应用程序(高流量游戏渠道) 。
可是 , 最终咱们决定抛弃 PHP 拥抱 Go , 下面我将解释为什么这么做 , 并共享一些在咱们的微效劳架构中数据库相关的想法 。
微效劳和 PHP:概念性错配
咱们了解的言语是 PHP , 它支撑了咱们现有的应用程序 , 有两个含糊的论据能够支撑咱们持续这么做下去:
咱们了解 PHP , 它开发很快题 。 为什么要放弃对咱们有用的东西?
市面上有许多 PHP 开发人员 。挑选 PHP 让咱们更简略扩充团队 。
这听起来非常合理 , 可是当咱们清楚 PHP 真的不是咱们的正确挑选时 , 咱们很快就放弃了这些想法 。
本文插图
向 Go 跨进
咱们偏爱的两个首要言语是 Node.js 和 Golang 。 咱们做了一些研究 , 并决定了转向 Go 而非 Node 。
这不是说咱们把 Go 用到所有当地 。 关于效劳器端渲染 , 咱们挑选 Node , 因为它允许咱们在前端和后端之间共享逻辑 。 咱们也运用 Java 来处理特定的问题 , 因为 Java 已经存在了很长时刻 , 而且有很多类库 。
咱们期望运用每个场景最适宜的东西 , 也就是说 , 关于大多数情况 , Go 将是咱们的首选东西 。
本文插图
【大数据&云计算一切为了微服务,我们从PHP迁移到了Go】
评估 NoSQL
当咱们开端用 Go 编写咱们的第一个效劳时 , 咱们一起也一起思考数据库的问题 。 咱们习惯运用 MySQL , 它学昔作业杰出 , 但它往往也是功能瓶颈 。 在咱们的传统技术栈中 , 咱们还很多运用了 Redis 进行缓存 , 这关于功能来说非常棒 , 因为它有效地减少了数据库 join 查询的拜访压力 。
因而当咱们开始在新技术栈中进行数据库选型时 , 评估 NoSQL 就很有必要 , 能够看看咱们是否能够彻底避免这些 join 查询 。 咱们评估了两个数据库:MongoDB - 咱们很猎奇去了解一个文档型数据库是否能够用来存储游戏中很多元数据 。 当然费事的是 , 咱们有必要在 Google Cloud 中运用 , 根据社区的说法 , 这样根本不能很好地扩展 。 咱们尽量避免杂乱的 DevOps 作业 , 因而 MongoDB 出局 。 Cassandra - 它是一个已知的能够扩展的数据库 , 并被一些大型高拜访量平台 Netflix 和 Reddit 运用 。 咱们喜欢的特性是:它的速度非常快 , 并支撑线性扩展 。 不过 , 咱们发现办理太杂乱了 。
如果您确切知道怎么查询您的数据 , Cassandra 非常适宜 。 关于具有很多数据的剖析效劳来说 , 情况或许如此 , 可是在灵敏的产品设计开发环境中 , 跟着产品的发展 , 用户适应性变化 , Cassandra 尽管强壮 , 可是关于咱们这样的小团队来说难于控制 。
【来源:电竞新媒】
声明:转载此文是出于传递更多信息之目的 。 若有来源标注错误或侵犯了您的合法权益 , 请作者持权属证明与本网联系 , 我们将及时更正、删除 , 谢谢 。邮箱地址:newmedia@xxcb.cn
推荐阅读
- 大胡子|湖人防守双MVP数据出炉!浓眉领衔锁死神龟,波普零封大胡子
- 常州发布|温差10℃+!白露已至,真的“凉凉”了?
- 第一财经|日本富豪前泽友作炒股赔44亿日元 “深深的悔恨”帖 请查收
- 中华人民共和国应急管理部|国家防总提升防汛防台风应急响应至Ⅲ级 应急管理部部署消防专业救援力量跨区域增援吉林、黑龙江
- 中国青年报客户端|【青声视语】数据解读:中国经济加快复苏引外媒点赞
- 交通运输部|交通强国·试点先行 | 综合交通枢纽体系怎么建?
- 森林|半藏森林晒新图被喷:没男人给买房怂了?回怼"我买了,你呢?"
- 穿搭|今年秋天流行穿"短一截",不用腰带也能穿出大长腿,小个子福音
- 哈尔滨新闻网|大数据:“台风堵”超“开学堵”|明天,台风降雨+周一,尽量别走这些路
- 王思聪带女生现身楼盘看房|太豪气!王思聪带女生现身楼盘看房上热搜 哪位网红获"国民老公"青睐?
