1.池化思想
如果每次需要用到线程都要去创建,就会增加一定的耗时,而线程池可以重复利用线程,避免不必要的耗时。
2.拒绝阻塞等待
如果你调用一个系统A的接口时,但是它处理业务逻辑耗时需要2S或以上。如果一直阻塞等待,直到下游服务接口放回接口才进行操作,这在业务上是很不合理的。这个可以参考io的多路复用模型。即使我们不用阻塞等待其他系统的接口返回,也可以做别的操作,等待下游服务接口返回接口才去相关业务处理。
3.远程调用由串行改为并行
一个页面查询多种信息,如果是串行一个一个查非常耗时,这种场景可以修改为并行调用,降低接口的耗时
4.锁粒度避免过粗
在高并发的场景,业务为了保持数据的一致性等等会使用锁进行保护共享资源。这样会影响到接口的耗时。加锁,锁的粒度要小,只需要加在临界资源即可。
5.提前初始化到缓存
对一些不常修改的数据进行初始化缓存在jvm或是三方缓存
6.耗时操作,考虑到异步