当前位置:网站首页>2、 Concurrent and test notes youth training camp notes
2、 Concurrent and test notes youth training camp notes
2022-07-07 07:24:00 【A low-key horse】
Concurrent 、 Unit test course notes | Youth Camp notes
This is my participation 「 The third youth training camp - Back end field 」 The third part of note creation activities 1 Notes
Concurrent
Concurrency and parallelism
Concurrent : In a nuclear CPU Run in
parallel : In multi-core CPU Run in
Coroutines and threads
- coroutines : User mode lightweight threads ,KB Level
- Threads : Kernel mode , It can run multiple Synergetics ,MB Level
Co process communication
channel( Is it synchronized -> The efficiency of consumption and production varies )

Lock( Concurrent security )
sync Under bag Mutex, Locking ensures concurrency security
WaitGroup
Method :

structure :

test
unit testing
The rules
assert( Example :assert.Equal() Method , Quickly compare and judge the test results )
coverage (
)<===“–cover”rely on ((mock Mechanism ) idempotent 、 Stable ==》 Pile driving )
idempotent : Every test run should produce the same results as before
Mockey Patch The scope of Runtime, Pass... At run time Go Of unsafe package , Replace the address of the function in memory with the address of the runtime function . Jump the implementation of the function or method to be driven .
The benchmark
Test the performance and CPU Loss of
ps: perform rand It takes a long time , because rand In order to ensure global randomness and concurrency security , Holds a global lock , Therefore, it is recommended to use a high-performance random number method fastrand, At the expense of certain sequence consistency .
Add
The difference between the two forms of login
One 、Cookie and Session
This is generally used for authentication when interacting with the client .
Two 、JWT+Token
No need to rely on some storage , Generally, the backend decrypts directly .
It usually lies in the server 、http If you interact , Use JWT+token
Message queuing application scenario
The main problem to be solved is isolation
Use scenarios : The two methods , If it's a strong dependence , It cannot be achieved in this way
If it is non strong dependency , Method A Is to release a message 、 event , Method B It is to receive and consume this event for asynchronous processing , In this case, use message queuing , Can play a decoupling function
Strong dependence , It cannot be achieved in this way
If it is non strong dependency , Method A Is to release a message 、 event , Method B It is to receive and consume this event for asynchronous processing , In this case, use message queuing , Can play a decoupling function
边栏推荐
- 1089: highest order of factorial
- Wechat applet full stack development practice Chapter 3 Introduction and use of APIs commonly used in wechat applet development -- 3.10 tabbar component (I) how to open and use the default tabbar comp
- [explanation of JDBC and internal classes]
- JS small exercise ---- time sharing reminder and greeting, form password display hidden effect, text box focus event, closing advertisement
- Implementing data dictionary with JSP custom tag
- 云备份项目
- 弹性布局(一)
- MIPS uclibc cross compile ffmpeg, support g711a encoding and decoding
- Several important steps to light up the display
- $parent(获取父组件) 和 $root(获取根组件)
猜你喜欢

Outlier detection technology of time series data

Role of virtual machine

Flexible layout (I)

$parent (get parent component) and $root (get root component)

Fast quantitative, abbkine protein quantitative kit BCA method is coming!

1089: highest order of factorial

Summary of customer value model (RFM) technology for data analysis

L'étape avancée du pointeur de langage C (haut de gamme) pour l'enroulement des cocons

How can brand e-commerce grow against the trend? See the future here!

Detailed explanation of transform origin attribute
随机推荐
Circulating tumor cells - here comes abnova's solution
Music | cat and mouse -- classic not only plot
[Luogu p1971] rabbit and egg game (bipartite game)
Introduction to abnova's in vitro mRNA transcription workflow and capping method
Lvs+kept (DR mode) learning notes
Role of virtual machine
Initial experience of teambiion network disk (Alibaba cloud network disk)
toRefs API 与 toRef Api
Composition API 前提
js小练习----分时提醒问候、表单密码显示隐藏效果、文本框焦点事件、关闭广告
RuntimeError: CUDA error: CUBLAS_ STATUS_ ALLOC_ Failed when calling `cublascreate (handle) `problem solving
sql中对集合进行非空校验
组件的嵌套和拆分
How can brand e-commerce grow against the trend? See the future here!
[semantic segmentation] - multi-scale attention
"Xiaodeng in operation and maintenance" meets the compliance requirements of gdpr
Bindingexception exception (error reporting) processing
修改Jupyter Notebook文件路径
main函数在import语句中的特殊行为
Common function detect_ image/predict