background
Recently encountered some phenomena at work, when we all follow the same routine to do something, no one really think about the purpose of doing so is really reasonable.
some problems
1. Spring bean must define an interface
If only one implementation, we defined the interface is meaningless. Spring in terms of the definition of interfaces and the only difference is not defined interfaces, may just go bean-managed process, is to use JDK dynamic proxy or CglibProxy nothing, I believe there are a lot of people did not pay attention to this point.
2. The amount of data necessary to divide the library sub-table
The very look of the scene, such as logging table, just write, and hardly read, meaning the use of sub-library sub-table is actually small. A few years ago the data can be deleted, if the fear of the future will use, migration go on it.
3. All microService
Each business has its own certain features, if the complexity of multiple dimensions, traffic, importance and so on. Some simple business to be able to get just a few classes, introducing premature "chopper" but really unnecessary. What time do, there is no best, only the most appropriate
to sum up
The things we take for granted may not be right. To have the ability to get out of the inning, we need to reflect.