Senior Java Software Engineer Interview summary

Source: Internet
Author: User

Recently went to several companies interview Java Senior engineer, hit quite big, feel that they have not been very good in-depth study, all kinds of knowledge is smattering, but the heart is too high, want to find a more highly paid position, the results of interviews often hit the wall, Ah, the mood is low, it is time to calm down, a good sum up, Prepare to open a blog, record the previous use of technology, development experience, also used to summarize the future study and work experience. This first blog, on the record of this time interview impression of the more profound issues (the answer is also on-line copy of the ha):

Why use a thread pool, why not use the Thread.Start method directly, which class is used by the thread pool

Benefits of the thread pool:

First: Reduce resource consumption. Reduce the consumption caused by thread creation and destruction by reusing the threads that have been created.

Second: Improve response speed. When a task arrives, the task can be executed immediately without waiting for the thread to be created.

Third: Improve the manageability of threads. Threads are scarce resources that, if created indefinitely, not only consume system resources, but also reduce system stability, using a thread pool for uniform allocation, tuning, and monitoring.

The thread pool class is: Threadpoolexecutor

Ii. Why the project uses spring instead of creating instances using new

Container: Spring is a container because it contains and manages the life cycle and configuration of the Application object. such as object creation, destruction, callback, and so on. At the same time, dependencies between objects are given to spring, reducing the coupling between components.

Framework: Spring, as a framework, provides some basic functionality, such as transaction management, persistence layer integration, and so on, allowing developers to focus on developing application logic.

Iii. What are the data types of Redis

String (Strings), which is the most basic type of Redis value.

List (Lists), list is a simple list of strings, sorted by insert order

Collection (sets), set (set) is an unordered collection of strings

Hash (hashes), hashes is a mapping between string fields and string values, so they are the perfect data type for presenting objects.

Ordered set (Sorted sets), an ordered set is very similar to a normal set, and is a collection of strings without repeating elements.

Iv. What to do if the Redis service is hung off

This should be related to the cluster, master-slave database replication aspects, specifically how not too understand.

Five, single-table big data volume How to optimize the query

1, optimize the index

2, using the Oracle Query Analyzer, the SQL Statement Analysis Optimization (do not use in and other statements, sub-query changes to join query, etc.)

3. Create a partition

4, according to business needs or according to the automatic enumeration value of the table

5. Using NoSQL databases, MongoDb, Redis

Vi. How many users does tomcat support?

Server.xml configuration, generally subject to server hardware performance and operating system connections, Tomcat does not limit the number of concurrent, but the number of concurrent is too many will be lost connection, the default is 150

Vii. How to solve large concurrent access

1, static page, static page project separation deployment

2, is the database tuning, including the database cluster, using NOSQL database/Memory Database

3, using the cluster technology, using Apache, Nginx and other reverse proxy server to achieve load balancing.

Viii. how to deal with the change of requirements

1, the requirements of the software phase, it is necessary to consider the needs of all aspects of the project as clear and detailed as possible to minimize the potential for future changes in demand

2, the project implementation phase, the establishment of formal requirements change process, document management, there is ready to check, according to, filter unreasonable demand, reduce the source of demand,

3, serious impact on the project schedule or cost or target changes in demand, need to re-project approval to be implemented.

Nine, the cause of software project failure

The first item is the definition of the project failure

1, is the project serious overtime, can not be delivered

2, is the project does not meet the needs

3, some indicators of the project do not reach the requirements, such as performance

Reason:

1, do not fully analyze the project, the breakdown and analysis of each function, estimating the workload and the difficulty of the work

2, the scope of the project to change, the demand has become too much, resulting in project extension

3, the project team personnel do not have enough skill level to solve the technical problems encountered by the project

4, the project manager's risk identification and management ability. Whether the project manager can find out the problems in the project in time and how to solve the problem after discovering the problem

Senior Java Software Engineer Interview summary

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.