V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  baiyi  ›  全部回复第 7 页 / 共 51 页
回复总数  1014
1 ... 3  4  5  6  7  8  9  10  11  12 ... 51  
2021-06-11 09:33:57 +08:00
回复了 darrenfang 创建的主题 全球工单系统 发现 2 个钓鱼网站
下个反诈 app,可以直接举报短信
2021-06-04 10:47:12 +08:00
回复了 yusheng88 创建的主题 问与答 幂等性接口,操作成功或失败,该返回什么?怎么响应?
@yusheng88 #4 接口的响应数据是与业务紧密关联的,需要服务于调用者。
比如 DELETE 操作,一般情况下是可以响应 204 status,同时响应内容为空。可如果你的业务需要在删除后响应一个关联的资源内容,那么就应该响应 200 status,同时响应关联内容。
2021-06-04 07:54:58 +08:00
回复了 yusheng88 创建的主题 问与答 幂等性接口,操作成功或失败,该返回什么?怎么响应?
在我看来幂等性和响应内容是无关的。

从 HTTP 的设计上来看。它为 methods 设计两种特性,安全性和幂等性,同时安全的一定是幂等的。安全性表示用户可以随意调用该接口,而不用担心对资源的影响,幂等性表示用户无论调用多少次该结构,对其资源的影响是一定的。
GET:安全且幂等
POST:不安全且不幂等
PUT:不安全但幂等
DELETE:不安全但幂等

先撇开安全不谈,幂等性的设计好处是什么呢?这就是我们设计接口时 POST 和 PUT 的区别。当你将接口设置为 PUT 时,就表示告诉了调用者,这个接口是可以重试的。
用最常见的新增场景来表示,POST 和 PUT 都可以用来添加资源,但 POST 不能重试,每一次请求都有可能添加一个新资源; PUT 可以重试,它只会在服务器中增加一个用户所描述的资源,无论用户重复调用多少次。

给一个典型的例子,为什么 Github v3 API 的 Star 操作是 PUT 而不是 POST,应该就是有幂等性的考虑。
https://docs.github.com/en/rest/reference/activity#star-a-repository-for-the-authenticated-user
2021-06-02 09:37:28 +08:00
回复了 JZWen 创建的主题 问与答 要有什么样的水平才能被称为架构师?
@JZWen #7 感兴趣的话可以看看这本书的前两章,作者直接给出了软件架构是什么、以及软件架构的重要性。微信读书里就有。
2021-06-02 09:07:51 +08:00
回复了 JZWen 创建的主题 问与答 要有什么样的水平才能被称为架构师?
我理想中的软件架构师应该是整洁架构之道中所描述的那样:
能够设计出优秀的软件架构,增加开发者的生产力。能够为了软件的可维护性与需求方或其他任何没有能力评估软件架构能力的团队进行抗争。
保证我作为一个开发者,能够始终在一个可以让功能实现起来更容易、修改起来更简单、扩展起来更轻松的软件架构中工作。
2021-06-01 10:50:47 +08:00
回复了 gushu 创建的主题 问与答 下了班就不想学习怎么办?
@stimw #9 有没有什么鸡汤推荐一下,最好是看一句话就像打鸡血一样 😂
粗略看了一下,这是《 DevOps 实践指南》的读书笔记吧。有时间还是建议看原书,原书中有大量的理论来补充说明这些观点。
2021-05-26 16:14:39 +08:00
回复了 yhkang 创建的主题 问与答 这个中国银行数字人民币试点 App 是不是假的?
建议举报,国家反诈中心 app,直接选择那条短信就能举报
我最近膝盖也有些不舒服,水泥马路太硬了,各位还是要注意一下
2021-05-17 17:26:11 +08:00
回复了 timedivision 创建的主题 健康 有患白癜风的病友吗?有没有治好的来分享下经验?
如果还想看大夫,最好是去北京武警总医院挂李志强医生的号,北京的医院挂号有专门的网站,号不算太抢手,提前几天是能挂上的。
2021-05-17 17:21:34 +08:00
回复了 timedivision 创建的主题 健康 有患白癜风的病友吗?有没有治好的来分享下经验?
平时可以去《白白手拉手》这个论坛多看一看,也可以跟其他病友聊一聊。这个病是有一定概率治愈的,尤其是前期。https://www.bbsls.net/forum.php
2021-05-17 17:20:05 +08:00
回复了 timedivision 创建的主题 健康 有患白癜风的病友吗?有没有治好的来分享下经验?
我大概四五年前得过,然后用了半年治好了。

白癜风最主要的治疗手段是照 308 激光。有条件一定要照这个,这个机器很贵,大部分医院都没有。如果所在城市没有的话可能就要去省会城市的医院。
2021-05-14 17:06:11 +08:00
回复了 ng29 创建的主题 Go 编程语言 资讯一个 golang 并发的问题
@lesismal #43 我明白你的意思,我现在已经不再认为我的示例代码中的顺序是一致的了,chan 也只是将接收器 /发送器标记为下一个要运行的 goroutine,但不能保证其一定是下一个运行的。哪怕是在我的示例代码中尽可能少的影响因素也是一样,因为还有抢占式调度。
我现在的结论也只是从 chan 的运行逻辑上解释两两输出的可能性,但 chan 不能必然导致两两输出。

其实结论已经不重要了,谢谢你帮我认识到我对于 go runtime 理解的不足。
2021-05-14 15:37:28 +08:00
回复了 ng29 创建的主题 Go 编程语言 资讯一个 golang 并发的问题
@lesismal #39 抢占式调度我的理解之前确实有些问题,现在我也知道我的示例代码也会被抢占了。

我现在已经没有纠结对错了。只是我认为的是 chan 的队列机制导致的两两输出,然后你说 runtime 中可能会有其他可能对顺序造成影响,所以出现乱序。但我还是没明白为什么这就说明我的结论不能解释两两输出的现象了。
2021-05-14 15:16:20 +08:00
回复了 ng29 创建的主题 Go 编程语言 资讯一个 golang 并发的问题
@lesismal #35 所以你也不是认为 print 影响的调度,而是说 print 前对 chan 操作并不能固定顺序,因为 runtime 有其他更多的可能性会对顺序造成影响。

我之前大部分的时间都是思考为什么两两输出,没有考虑到更多其他变量对顺序造成的影响。再加上我之前的表述可能也有问题。
所以我们的结论并不是矛盾的
2021-05-14 14:47:21 +08:00
回复了 ng29 创建的主题 Go 编程语言 资讯一个 golang 并发的问题
@lesismal #33 我这里的代码确实有些问题,因为我要调试 chan 源码部分,所以尽量屏蔽了其他的调用,导致我没有发现乱序的存在,”绝对是连续两次“这个结论过于武断了。很抱歉。

不过去掉偶尔存在的乱序问题,连续两次的输出可以认为是 chan 等待队列机制的作用吗?
2021-05-14 14:09:05 +08:00
回复了 ng29 创建的主题 Go 编程语言 资讯一个 golang 并发的问题
@lesismal #31 你好,我又调试研究了一下,我认为我们之间的主要在于调用的 print 函数不同。我在我的示例代码( https://play.golang.org/p/wmU0fpTt5uf )中尽量屏蔽了其他可能对输出顺序造成影响的函数,所以使用了 print 语句,而不是楼主原有的 fmt.Printf 函数。
结果还是连续两次的输出,而不是交替的输出,并且通过对 chan 源码的调试,能证明确实有连续两次的调用。这是否足以说明不是 print 的影响造成的连续两次输出。

关于抢占式调度是我原来理解错误,我原来想当然的认为在 goroutine 能够主动出让调度的情况下,sysmon 并不会抢占。然而阻塞并不会刷新 goroutine 的运行时间,还是会被抢占。
不过我认为这并不会影响我上面的结论。

ps: 我在我的示例代码中也使用 fmt.Print 函数后,发现确实经常输出乱序的结果,这应该是其内部机制造成的,但我没有仔细研究。
1 ... 3  4  5  6  7  8  9  10  11  12 ... 51  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5486 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 36ms · UTC 05:50 · PVG 13:50 · LAX 22:50 · JFK 01:50
Developed with CodeLauncher
♥ Do have faith in what you're doing.