服务类的网站怎么做,阿里云服务器租用价格,大学生创业服务网站建设方案,wordpress后台没有写权限kafka和rocketMq都是消息中间件#xff0c;消息中间件的作用#xff0c;异步#xff0c;削峰#xff0c;解耦。
异步化提升性能。通过引入消息中间件#xff0c;可以在客户端和服务器之间实现异步通信#xff0c;从而提高系统的处理能力和响应速度。1降低耦合度。消息中…kafka和rocketMq都是消息中间件消息中间件的作用异步削峰解耦。
异步化提升性能。通过引入消息中间件可以在客户端和服务器之间实现异步通信从而提高系统的处理能力和响应速度。1降低耦合度。消息中间件允许不同的应用程序组件通过发送和接收消息来进行通信从而提高了系统的模块性和可维护性。12流量削峰。在面对高并发请求时消息中间件可以帮助系统更好地应对瞬时流量高峰防止系统因负载过重而崩溃。扩展性。消息中间件能够通过增加或修改处理过程来轻松地扩展系统的处理能力而无需修改代码或调整参数。4冗余存储。通过消息的持久化功能消息中间件可以在节点或服务器发生故障时保证数据不丢失。顺序保证在某些应用场景下数据处理的顺序非常重要而大部分消息中间件支持一定程度的顺序性。缓冲。消息中间件通过缓冲层帮助任务最高效率地执行控制和优化数据流经过系统的速度。事件驱动架构。消息中间件支持事件驱动架构提供异步处理机制允许应用将消息放入队列中并在需要时再处理。此外消息中间件- - 还支持多种传递模式如点对点模式和发布/订阅模式并且可以通过多种协议进行通信。
可以看到kafka或者rokectMQ的时候发送消息以后会出现数据阻塞消费很慢的情况。这种情况有以下处理的几种方式。
看消费组是否有多个订阅者在进行订阅并进行消费。看消费者的数据发送者的数量能否把消费者的数量增加已提高消费的速度。在消费者中可以使用线程池启动多个线程然后多线程去消费这些数据这样可以提高消速度。看代码中是否有操作数据库的地方操作数据库的地方是增删改查。是否有用到具体的耗时又是多少。 1、如果是查询判断数据是否必须使用最新的实时数据如果是那么就要优化SQL以保证能够达到要求。如果数据是配置的数据不需要强实时那么就可以使用缓存降低耗时提高消费速度。 2、新增的情况下如果可以使用批量新增尽量使用批量新增这样可以提高消费的速度不用每次消费都访问数据库进行新增。 3、修改删除亦是如此。看是否有外部的接口调用比如一些http的请求或者调用了其他的三方组件es的写入hbase的写入redis的操作等等。看看会不会有网络请求延迟的情况导致了消费速度变慢数据堆积。检查代码中是否有用到很多的for循环while循环或者其他代码导致代码的性能下降从而让整体的消费速度变慢。对于线程池对于多线程进行消费kafka的数据一台服务器是16核每台服务器设置6个线程一共12台服务器那么线程一共是72个。这个时候如果还是依然的kafka消费速度起不来依然堆积要考虑是否有其他的原因可以看看服务器的情况可能是多线程消耗了CPU的性能因为线程中有可能访问数据库但是数据库很慢那么线程都在启动执行中直接把CPU打满了所以这个时候就看数据库的SQL怎么优化了是否可以加索引覆盖索引联合索引等等。让SQL的速度变快线程启动很快就结束CPU也就降下来了。消费速度提升上来。
如果对你有帮助或是有一些启发的话制作不易还请点赞收藏感谢感谢。