![]() | 1 wweir 2020-06-05 06:04:44 +08:00 via Android ![]() 应该找客户聊出真实需求,这个听着是个伪需求 不懂技术的人,更多应该提感受、期待,而不是提出技术解决方案 |
![]() | 2 johnchshen 2020-06-05 06:10:38 +08:00 via Android 肯定是系统老出错影响到用户工作了。 另外是不是出错会导致用户手头未提交工作丢失? 可以参考 word,未保存内容缓存在硬盘,重启后重新恢复。 |
![]() | 3 kaiki OP @johnchshen 他直接就说了停电问题,这种问题并不能靠软件解决,只能说的确是个无法实现的需求。 |
![]() | 4 wd 2020-06-05 06:26:53 +08:00 via iPhone ![]() 这当然可以实现了,你去看看数据库都怎么处理的。 |
![]() | 5 johnchshen 2020-06-05 06:42:11 +08:00 via Android @kaiki 如果说是停电,火灾,地震等意外,客户要的可能是高可用性。 |
![]() | 6 johnchshen 2020-06-05 06:43:45 +08:00 via Android 高可用性很多解决方案和参考架构的,而且直接给客户预算倍数增长,何乐而不为呢? |
![]() | 7 green15 2020-06-05 06:44:46 +08:00 via iPhone ![]() 客户这就是要自动保存功能……怎么没法实现,你把每次自动保存的间隔时间缩短,停电又能怎么了。再说了,如果保存时间很长,再建议客户加个 UPS 备用电源配合自动保存。 如果再保守点,直接上现成的异地容灾备份系统……楼主以为各大厂商对于数据的预防是怎么,假定 A 地发生火灾地震海啸或什么,即时从 B 地同步切换。钱给够,怕地球爆炸,上传到太空备份都行。 |
![]() | 8 also24 2020-06-05 06:46:13 +08:00 via Android 这不就是事务么? |
![]() | 9 3rdFaust 2020-06-05 06:48:55 +08:00 ![]() 你卖他一套异地容灾 |
10 winnerczwx 2020-06-05 06:50:41 +08:00 via iPhone ![]() 每次提交的时候把请求持久化到磁盘,请求成功后标记这个请求已成功,或者直接删除。程序启动时检测一下有没有已被持久化却没被标记为成功的请求,如果有,执行回滚。 |
![]() | 11 msg7086 2020-06-05 07:04:39 +08:00 这功能多少年之前就实现了。文件系统实现过,数据库实现过,说简单点你直接 MySQL InnoDB 上开个事务就行了,断电的时候下次启动自动滚回去。 |
![]() | 13 delectate 2020-06-05 07:18:51 +08:00 并非不能做,就是加工期,加预算呗。 持久化、定期保存+异地容灾备份+守护进程,反正能想到的都做进去。 |
@kaiki 这个是在分布式环境里要求系统 crash-recovery 级别异常下正常工作吧。感觉要求太高了 |
![]() | 15 mscb 2020-06-05 07:26:47 +08:00 via Android ![]() 告诉他这个功能很难,不属于合同中的开发范畴,要加钱咯 |
![]() | 16 opengps 2020-06-05 07:54:27 +08:00 via Android 异地多活系统 |
![]() | 17 elfive 2020-06-05 07:58:22 +08:00 via iPhone ![]() 单纯针对停电的话……加个 UPS 不就搞定了?不行就加两个呗? |
![]() | 18 littleangel 2020-06-05 08:06:20 +08:00 via iPhone 可以做 加钱。 |
![]() | 19 IvanLi127 2020-06-05 08:14:09 +08:00 via Android 意外关闭而已,又不是设备爆炸什么的,定时自动保存,下次开启的时候再根据之前保存的数据恢复就是了。 |
![]() | 22 xnode 2020-06-05 08:41:51 +08:00 加钱 |
![]() | 23 silvernoo 2020-06-05 08:50:44 +08:00 利用快照吧 |
![]() | 24 reus 2020-06-05 08:57:13 +08:00 via Android ![]() 你水平不行,连 sqlite 都支持断电回滚事务,你居然觉得奇葩? 如果你的程序断电后再开启,不能保持数据完整一致,那你的程序就是劣质的。 |
26 Chenamy2017 2020-06-05 09:18:36 +08:00 数据库事务了解下。 |
27 chouxiaozi1989 2020-06-05 09:21:42 +08:00 舍得给钱啥都能做,真的 |
![]() | 28 toan 2020-06-05 09:23:49 +08:00 提供一些容灾方案给客户。 |
29 daozhihun 2020-06-0 09:27:34 +08:00 主流数据库都支持断电重启后事务自动回滚啊,没什么你需要操作的 |
![]() | 30 jasamboro 2020-06-05 09:33:29 +08:00 这需求没毛病吧,没要求不能丢正在处理的数据啊,只是让回滚而已 |
31 cs419 2020-06-05 09:44:18 +08:00 还记得那个根据用户手机壳颜色切换软件主题颜色的需求吗 你直接说不能做 容易干起来 不利于工作 你说实现这个需要 需要单独订制手机壳 人家自然会知难而退 如果说对方死咬 就是随便的手机配上随便的手机壳都要实现这个功能 真有这种不讲理的 别和他谈啊 找自己的领导或者对方的领导谈这个问题 |
![]() | 32 Tink PRO 我觉得没问题啊,这个需求处理不了? |
35 ma836323493 2020-06-05 09:53:38 +08:00 @kaiki 如果这个问题解决不了,我就解决掉提出这个问题的人 哈哈 |
![]() | 36 crist 2020-06-05 10:15:53 +08:00 LZ 词不达意,标题是回滚数据,内容描述却是备份数据、 |
![]() | 37 rizon 2020-06-05 11:04:20 +08:00 要发掘甲方真实需求,并引导甲方去思考你的方案,让他误以为是他自己想出来。 这样就是 win-win 了 |
![]() | 39 kimqcn 2020-06-05 11:07:25 +08:00 楼主应该是专门做客户端的,需求应该提给服务端或者运维,楼主把需求转给销售,让销售去找对的人。 |
![]() | 41 ganbuliao 2020-06-05 11:10:26 +08:00 就是实时的预存储数据呗 这个很多软件都有吧 看是存本地还是云上了 |
42 FourAndHalf 2020-06-05 11:14:49 +08:00 每 1 秒保存一次,啥,你说慢,来来你行你上 |
43 fansfans 2020-06-05 11:18:03 +08:00 回滚数据是指 从应用开启到关闭产生的所有数据吗 包括上传到服务器的请求也需要撤回我觉得有点奇葩, 当然如果只是持久化 实时保存那没什么问题 |
![]() | 46 tanrunhao 2020-06-05 12:13:46 +08:00 看到评论, 发现主要分两派。 一是真的按技术要求实现回滚备份, 一是理解实际要求把客户需求描述改成自动保存。 明显第二种是更加实际的方式 |
47 jones2000 2020-06-05 12:22:41 +08:00 很好奇,地震火灾海啸等自然灾害时, 电力和网络应该都是被破坏了吧, 怎么能备份到云端呢? |
![]() | 48 tuochenlyu 2020-06-05 12:24:41 +08:00 via iPhone 异地容灾,说得轻松,市值 200 亿的工厂也不一定搞得起这个 |
49 jones2000 2020-06-05 12:26:38 +08:00 我感觉还是让你客户对他的重要数据买一个保险, 比较靠谱点。起码保险公司能赔钱给客户。 |
50 skylancer 2020-06-05 12:40:38 +08:00 ![]() 就单纯这个需求而言,客户不奇葩,我只觉得卤煮懒、菜和奇葩 |
![]() | 51 woofee 2020-06-05 12:57:55 +08:00 有时候用户描述的可能不是很专业,但是你可以打开自己的思维,用其他的方法去给他想要的东西,而不是顺着他的思路去想 |
![]() | 52 xiaoyong 明显不是真实需求,只是遇到了问题之后自己以为的自己的需求。这个需要了解客户遇到的问题是什么? |
53 rooob1 2020-06-05 13:48:56 +08:00 技术差怪产品经理,哈哈 |
![]() | 55 rioshikelong121 2020-06-05 13:50:23 +08:00 哪里奇葩了。 人菜不要怪需求 |
![]() | 56 crab 2020-06-05 13:52:27 +08:00 @tuochenlyu 大部分都是扯淡忽悠的,光纤被挖断中断服务的例子不少了。 |