作者回复: 一直这么认真学习,值得表扬!!
作者回复:
1.mq的设计目的就是消息传输,保证不丢失,为此用了很多的手段,比如消息队列、路由、存储等等。而http的目的不在于此,它的可靠性基于tcp,而tcp不能保证消息100%发送。
2.无状态有的时候是优点有的时候是缺点,看应用场景,在需要扩展的时候无状态就是优点,在需要会话保持的时候就是缺点。
3.但无状态可以很容易变成有状态,而反过来就很难,这就体现了http的灵活性。
作者回复: http协议里的“状态”是指没有规定通信双方需要记录通信过程的上下文信息,与日常生活的“状态”意思是不一样的。
每次http请求都是独立,无关的,不需要保留状态信息。
作者回复: 是的,http这种请求-应答模式就是这样,必须第一个有回应后才能处理下一个。
作者回复: WebSocket属于后来的“小字辈”了,而且应用范围比http还是要差很多,不过应该不算是“垃圾”了,笑。
作者回复: 是的,所以就出现了WebSocket。
作者回复: √
作者回复: 不矛盾,长连接只是在连接层面节约了成本,每次的请求还是没有携带任何客户端的信息,服务器仍然不记录状态,每次请求都是独立的。
作者回复: 这个属于tcp协议要解决的问题,如果没有收到ack,客户端就认为是丢包,启用重发机制,再发一次。
作者回复: 这个是最重要的优点。
作者回复: 在开头几讲简单介绍了这些概念,要搞清楚的是协议、调用接口、设计风格/规范这些更大范围的概念。
作者回复: 总结的不错。
作者回复: 说的非常好,赞!
作者回复: 说的很好。
作者回复: 这两个应该是互相作用的,就像“鸡生蛋蛋生鸡”一样,没有一个绝对的起点。
作者回复: 对
作者回复: 笑。
作者回复: 循序渐进,学业可成。
作者回复: 说的对。