V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  sujin190  ›  全部回复第 12 页 / 共 118 页
回复总数  2347
1 ... 8  9  10  11  12  13  14  15  16  17 ... 118  
2023-05-12 23:11:03 +08:00
回复了 ww940521 创建的主题 程序员 观技术部与其他部门互撕有感
既没人认真写,写了也不会有人认真看,这才是现实
2023-05-11 20:47:55 +08:00
回复了 SANJI59 创建的主题 问与答 关于系统并发问题,请各位 V 友帮忙分析下。
@SANJI59 处理跟不上慢的话看日志应该很好区分吧
2023-05-11 18:22:43 +08:00
回复了 SANJI59 创建的主题 问与答 关于系统并发问题,请各位 V 友帮忙分析下。
@SANJI59 #24 就是服务器收到设备返回的开启成功的通知但是数据库看订单状态没改?这订单状态应该是服务器改的吧,这还会有问题?莫非是主从延迟导致的?或者是事务提交延迟?不过正常应该是订单创建完成强制事务提交了之后才给设备发的指令的吧,用 spring 这种框架的话要注意框架的自动事务管理逻辑啊,一般来说如果你的设备操作只是一个简单的电磁锁开关的话,估计延时能在几十毫秒到 200ms 以内吧,数据库负载上来事务提交延时超过应该还是很容易的吧
2023-05-11 17:50:54 +08:00
回复了 SANJI59 创建的主题 问与答 关于系统并发问题,请各位 V 友帮忙分析下。
@SANJI59 #16 顺便说,小程序要使用 ws 的原因一般也是因为 Http 接口服务和 mqtt 服务不是同一个,服务返回结果,分享一下我们再用的 Spring Boot 可以跨服务的 Event 吧

https://gist.github.com/snower/f8ef25e57c72f9b41fb31ee8b164193b

逻辑也毕竟简单,创建完成订单给设备发送命令前用订单号为 key 创建一个 Event ,然后接着给设备发送命令,设备执行成功后服务的收到结果通知更新万订单状态后,用相同的订单号为 key 也创建一个 Event ,接着调用 set 设置 Event ,http 接口这边 wait 就可以收到反馈了,具体订单信息可以再读数据库就好了

不过依赖一个外部服务来完成的

https://hub.docker.com/r/sujin190/slock
2023-05-11 17:17:09 +08:00
回复了 SANJI59 创建的主题 问与答 关于系统并发问题,请各位 V 友帮忙分析下。
@SANJI59 #16 其实如果订单通过 http 请求发送的话,结果通过一个 long poll http 接口来获取应该是更简单可靠的

https://segmentfault.com/a/1190000041190907

我们直接也搞过不少这种,还是 http long poll 更方便,搞过 openrest 的,用 spring boot 的话担心连接占用过多线程,其实可以用 DeferredResult ,工作线程会被释放,连接放到底层 nio 了,也可以支持大量并发请求
2023-05-11 17:08:45 +08:00
回复了 SANJI59 创建的主题 问与答 关于系统并发问题,请各位 V 友帮忙分析下。
@sujin190 #15 那就是说小程序其实是通过单独的 http 接口创建订单然后给设备发送指定的,那话说你怎么保证这时候 ws 是已经建立好的了啊?那会不会高峰期无论是带宽紧张还是应用负载原因导致 ws 建立成功时间变长了那是不是要出错了?设备执行命令成功给服务器通知结果其实应该是更新数据订单状态了吧,小程序通过数据库订单信息补偿就好了啊
2023-05-11 16:19:35 +08:00
回复了 SANJI59 创建的主题 问与答 关于系统并发问题,请各位 V 友帮忙分析下。
1500 个设备都很少了,话说都没写日志的么?你这描述了半天看起来也没弄清楚是设备给服务器回开启成功有问题还是服务器给小程序回开启成功有问题,你这设备接入用的 mqtt ?而且你小程序是用 ws 发送给的开启指令么?其实阿里云的 IOT 云的 RR 消息就很容易处理这种,小程序这边短时请求用 ws 确实费劲,几千台设备么单体服务也足够也不复杂
2023-05-11 15:56:03 +08:00
回复了 NoKey 创建的主题 程序员 后端服务在有数据库变更的情况下,如何不停服务发版
如果你要平滑升级,那么数据结构就要支持平滑升级啊,比如这种修改字段的需要升级两个版本才能完成,第一版添加心字段并且修改业务逻辑同时兼容新老字段使用,第二版删除老字段同时业务逻辑删除对老字段的使用和支持,一劳永逸的方法肯定是没有的,否则大家废了吧劲的搞设计模式搞业务抽象搞微服务干嘛呢
@sadfQED2 #21
@amon #22 不要忽略数据量的问题,之前搞过这种查询方便就把大量数据合并到一个表,数据文件数百 G ,内存 16G ,然后查询的时候发现 mysql 读磁盘才 10M 不到,加上查询过程中临时文件的 IO ,扔一个 sql 进去跑几个小时啥结果没有。。
2023-05-09 10:41:39 +08:00
回复了 marine2c 创建的主题 程序员 Mysql 只查状态字段优化
区分度不高索引没啥用,你看下查询计划这种情况应该是不会用状态索引的,如果有 limit 限制数量且不多的情况下不会慢的,如果还慢应该是加了排序了吧,这种情况应该是排序慢,也许你需要加索引的字段是排序字段才对
@lzz2394677796 #9 50 亿 50 个表如果不是有序的话,group by 要连表估计难,其实最快的应该是用默认顺序读出来按序分堆到 5000 个文件,然后再单个文件处理找出重复就好了,如果内存充足的话直接读在内存算就好了啊,要啥 redis
2023-05-06 14:45:35 +08:00
回复了 meisen 创建的主题 健康 减肥真的太痛苦了,特别是晚上,饿的能吃一头牛 🐂
还是中午吃好,晚上吃少,多运动比较科学,贵在坚持,搞得天天自己难受得要死根本坚持不了多久,多运动体力上来后丝毫不会累,配合合适得饮食其实就自然而然了并不需要特别去坚持,我现在基本就是中午吃饱,晚上水果玉米减脂餐然后一小时运动,跑步无器械锻炼各半,差不多快五年了,感觉还挺好,如果工作太忙了也至少保证运动每周 3 小时,随意一些感觉可以一直坚持下去
2023-05-05 15:45:40 +08:00
回复了 sbldehanhan 创建的主题 Python 如何让 Python 实现真正多线程?
@liuxingdeyu #1 似乎不大可能做到吧,不是 python 语言自身难以做到,难的是那么多 C 开发的扩展都可能不兼容,这可就不是一件容易的事了
2023-05-05 11:04:12 +08:00
回复了 superdotcom 创建的主题 OpenAI openai 真奇怪
chatgpt 也会记错说错的,和人一样,前后矛盾的很正常,好比我说我会上天,难道我就真能上天了😅😅
2023-05-05 10:01:17 +08:00
回复了 nanwangjkl 创建的主题 分享创造 写了一个生成反 OCR 图片的工具
@dreasky 而且吧,甚至有可能是人已经看不清但是 ocr 任然能识别。。
@benrezzagmehamed 密钥泄露了这不随便就能弄了
2023-05-04 12:03:03 +08:00
回复了 kapr1k0rn 创建的主题 问与答 有什么企业级的代理方案?
@kapr1k0rn #4 缓存配置有问题?要不直接用 tcp 代理试试呗,别用 http ,或者干脆直接配置个端口转发就完了,要啥代理,端口转发再有影响就不科学了
2023-05-04 10:19:02 +08:00
回复了 kapr1k0rn 创建的主题 问与答 有什么企业级的代理方案?
你这如果分公司有的不能上外网只能通过专线连到总公司,那么也就意味着上传速度受限于专线带宽和总公司带宽,你这代理上传慢分明是专线或者总公司带宽不足吧,显然不是代理的问题,代理再牛逼也解决不了带宽的问题吧,再说就一流量转发又没啥性能要求
2023-05-04 10:12:10 +08:00
回复了 DelayNoMay 创建的主题 问与答 未来是注定的,只是任何人都无法预测而已
这不就是命运一说么,所以你是相信命运还是不信命运?不过嘛,从逻辑上来说这两其实是毫无区别的同一个问题,所以想这种问题纯属就是除了浪费精力毫无意义
1 ... 8  9  10  11  12  13  14  15  16  17 ... 118  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1306 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 39ms · UTC 18:12 · PVG 02:12 · LAX 11:12 · JFK 14:12
Developed with CodeLauncher
♥ Do have faith in what you're doing.