前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一周播报|明明BUG这么多,死也不给看代码?这位程序员你咋这么矫情......

一周播报|明明BUG这么多,死也不给看代码?这位程序员你咋这么矫情......

作者头像
养码场
发布2018-08-13 16:42:15
3410
发布2018-08-13 16:42:15
举报
文章被收录于专栏:养码场养码场养码场

养码场技术交流N群

每周周一,与您相约“一周播报”

20:30

技术问题

Q:有两张表(一个库),一个是用户表、一个是会员表,一个会员记录对应多条用户记录,有一个事务过程如下:每更新用户表中一条记录,更新(update)对应会员表中的一条记录,由于多条用户记录对应会员表中的一条记录,当并发量大的时候,会有多条请求会update同一条会员记录,此时会使数据库变得很慢甚至挂掉,该如何解决?

养码人A提出:在where条件增加一个乐观锁字段,如果没有命中就不会更新。

但是这条被提问人否决了:这样做是解决相同的更新请求如何避免重复的,但这些请求并不是一个,是不同的请求。

养码人B又说:通过消息队列做成异步更新,消费者消费消息时还可以内合并每秒(指定时延)相同数据的更新操作。

提出人觉得这个比较靠谱,但还是有个问题:如果异步更新的话,怎么保证同步的接口,这个事务操作接口业务系统在调用时肯定需要同步得到结果的,换句话说你的操作转换成了同步接口里面调用了异步的更新接口。那该如何保证呢?

养码人B补充道:用缓存服务器比如redis暂存接口调用状态,消费者执行结束更新状态,同步接口等待状态标记改变;相当于用消息队列去合并更新和限流,改动有点多,再想想其他方案,如果不需要同步,没有强事务可以这样~

养码人们都觉得B的方案不错,但是也要看具体业务场景,而且加队列后并发性能会下降,并发比较高多个请求的情况下会使更新数据库操作时间加长。所以各位养码人,有没有更好的方法呢?

生活不止眼前的苟且

还有未来的苟且啊!

一位群友问各位养码人:杭州滨江一套6平米的房子,带独立卫生间,660块一个月,有没有朋友要租?

各位养码人都惊了:这6平米,2*3,能住吗???还能带卫生间???卫生间在头上吗???

群友说:虽然我现在住了别墅(场主心情复杂),但是在这之前也是北京1个6平米的小房间,奋斗的时候要给自己制造悲凉的气氛啊!

另一位养码人说:刚量了下我现在住的带卫生间,也就8平方不到。

纷纷感叹:哎,生活不止眼前的苟且,还有未来的苟且啊......

其他组的同事不给我看代码

有些养码人有这样的困扰:其他组的同事做某件事,结果质量和性能都不佳,但就是不给看代码。无法理解这是什么心理!

养码人A:反编译吧,混口饭也不容易,想自我保护吧。

养码人B:啥呀,这根本不是自我保护,他就是担心代码被看了直接就要滚蛋了,而手中的代码就是他们唯一的救命稻草!

养码人C:这个也要看是什么合作方式了,从协作边界来说,人家独立团队在没有高层指示时,有权力不给源码。你是需求方,你的权力是对产出结果进行要求,而不是干预对方工作过程。当然,如果你们协议中有提供源码的要求,是可以要源码的哦。

各位养码人,你们咋看待这件事呢?你会给不同组的人看自己的代码吗?给场主留言呗~

细数那些“不务正业”的公司

各位养码人一定有孩子在学乐器,都知道雅马哈吧,这个“不正经”的公司,明明玩乐器的,居然去造路由器、发动机还有摩托车了!

养码人A:这有啥啊,诺基亚还是造纸起家的呢。 养码人B:诺基亚也做过军工啊。 养码人C:德国那些汽车厂以前都是造坦克的呢。 养码人D:通用电气做灯泡起家的,还做过医疗设备、造飞机引擎。 养码人E:那小米不也是吗,一个做手机的,现在做了电饭煲、毛巾、接线板......

场主看了大家的回复,表示学到了学到了!

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-08-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 养码场 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档