(6) Reliability of RabbitMQ messages in RabbitMQ Practical Tutorial (for Java developers)
Message Reliability
When using RabbitMQ in a project, we may encounter problems such as adding a record to the message middleware to record the expected message consumers to modify the order status when the user pays successfully, but the actual order status is not changed successfully in the end. In the face of such p ...
Posted by Blob on Wed, 15 May 2019 11:52:53 +0200
Implementing Bidirectional Data Binding of Vue
Reproduced at https://segmentfault.com/a/1190000014274840
1, principle
The principle of Vue's two-way data binding is well understood, mainly through the definition property property property of the Object object, rewriting the set and get functions of data. Here, the principle is not described too much, but mainly to ...
Posted by alco19357 on Wed, 15 May 2019 02:44:08 +0200
Front-end project file organization and component naming
Reason
In the process of developing a project, people are more or less doubtful about the catalogue structure of their own project, how to divide modules reasonably and how to name them reasonably. If these are not well regulated in the early stage of the project, then the newcomers will divide their catalogues again according to their own logi ...
Posted by stokie-rich on Wed, 15 May 2019 02:39:34 +0200
J.U.C|AQS Shared Source Analysis
1. Write before
In the last section, we talked about the exclusive source code, see J.U.C|AQS Exclusive Source Analysis
In this chapter, we continue to navigate the world of AQS source code to understand the acquisition and release of shared synchronization.
2. What is Shared
The only difference between shared and exclusive is that multiple t ...
Posted by milind24 on Tue, 14 May 2019 21:55:04 +0200
Concurrent Programming Theme
CountDownLatch (counter)
CountDownLatch is located under a concurrent package and can be used to perform counter-like functions. If thread A needs to wait for other n threads before it can be executed, CountDownLatch can be used to achieve this function. CountDownLatch is implemented through a counter whose initial value is the number of thread ...
Posted by Youko on Tue, 14 May 2019 18:47:51 +0200
Summary of hdoj1003+codeup2086:Max Sum Maximum Continuous Subsequence and Problem Solution
Catalog
Solution method of hdoj 1003
Violent solution O (n ^ 3) / O (n ^ 2) (not recommended, probably timed out)
Divide and conquer (more complicated, just master ideas)
Ergodic summation O(n)
dp dynamic programming
The Solution Method of Codup2086
dp solution
Solution method of hdoj 1003
Violent solution O (n ^ 3 ...
Posted by exec1 on Tue, 14 May 2019 15:40:54 +0200
Doker-compose Running Flask Application Best Practices
background
Before deploying applications, various environment configurations were needed, and various shell operations were needed to build a set of available services. Now with Docker, deployment is easier, configuration errors are less likely, and environment inconsistencies are less likely. It solves the problems of running in the local en ...
Posted by martins on Tue, 14 May 2019 11:55:21 +0200
LEYOU MARKET LEARNING NOTES XI-Elasticsearch LEARNING
3.1. Basic queries:
Basic grammar
GET/Index Library Name/_search
{
"query":{
"Query type":{
"Query Conditions": "Query Conditional Values"
}
}
}
Here query represents a query object, which can have different query attributes.
Query type:
For example: match_ ...
Posted by IanMartins on Sun, 12 May 2019 14:09:54 +0200
Front-end Asynchronous Solution-3 (Promise)
I haven't written for a few days. I've been learning Promise and generator intermittently these days. Today I can finally solve the asynchronous problem by combining the two things. Today I would like to share with you the usage of promise and the handling of asynchrony.As usual, let's simulate a Promise first.
//Cough, that's how it works.
let ...
Posted by philip@hux.co.za on Sun, 12 May 2019 07:51:26 +0200
Analysis of Go slice Expansion
This paper mainly makes some analysis of go slice's expansion mechanism. Environment, 64-bit centos docker image + go1.12.1.
Routine operation
When slice append occurs, growSlice occurs when slice cap is not enough to accommodate new elements.
For example, for the following code
func main() {
slice1 := make([]int,1,)
...
Posted by Lee on Sun, 12 May 2019 04:11:48 +0200