Byte [] spring strokes beating mushroom Street four interviews were asked what?

Thumbs up again, a habit, micro-channel search [ Third Prince Ao propyl ] concerned people in this Internet tool Gouqietousheng.

This article GitHub https://github.com/JavaFamily already been included, there is a full-line manufacturers interview test sites, as well as information on my series of articles.

Foreword

This is a reader's face by sharing Coincidentally, he was in the street three rounds of mushrooms, though they do not last too, but we also hope to share out Chou Chou.

This week I might be alone maker of video interviewing process, involving each round of inspection points precautions, if they feel the need, you can leave a message to let me know what you want to see.

Interview Experience

I. 11.20 byte beating side Java development, directly linked to (shame beginning ......)

  1. Describes the main project, how to do;
  • I had wanted to do a brief introduction of business, but the interviewer requires detailed, so twenty minutes are introducing business;
  • Killed question: How much amount of data? Telling the truth, the actual use of single table 1000-10000 level. Basically cause behind the interviewer did not want to ask questions ......
  1. Understanding of Spring's?
  2. Understanding of the AOP?
  3. Talk about Java static and dynamic proxy agent

Then gone into asking questions link ...... certainly know already cold. The interviewer said the main problem is that technology stack is still too far behind in the Institute, said that the Internet and the idea that people do not like us. After no real mention of the proposal to end the interview.

reward:

  1. First interview, finally taken this step;
  2. He realized his gap with front-line big Internet companies, continue to be efforts;
  3. Since the direction of the interview preparation error, the results in terms of the amount of data inadvertent direct sentenced to death, and did not express the true performance and content preparation. When ready, it has to a large amount of data, optimization and other direction to consider!
  4. Poor communication skills. [Understanding ......'s? Such a problem] thrown out, try a lucid way

II. 12.04 mushroom Street side Senior Java Developer

  1. It describes the main project (probably around twenty-five minutes);
  • After a failure on the main line of business of this sort, more skilled describes the business, still it took fifteen minutes, but interspersed with questions to ask of projects;
  • Ask questions:
    • (1) dynamic template data source from where? A: The resource directory registration, available through various data services;
    • (2) relatively more incremental data, the data source how to deal with? A: In one aspect, the number of data sources typically are relatively fixed content, processing by the respective encapsulated traffic, for more incremental data, the association table using the dynamic model templates; on the other hand, the more data sources they usually use a tree structure, data services are generic lazy loading approach, with no performance bottlenecks;
    • How (3) do dynamic template logic processing data? A: Dynamic templates are only responsible for recording data on business logic processing is another, also described in the resume. Then introduces the dynamic summary of the design logic, about ten minutes. (Interviewer instructions are interested in the project to do, and I've got the answer introductory)
    • (4) If the logic processing technical and did not throw an exception, but a calculation error exception (similar to the 1 + 1, the result is calculated 3 errors), there is no deal? (Asking is there any calculation monitoring function) A: No, just more rigorous attention to the technical exceptions, no errors in calculation processing. If you really deal with this problem, we need to clear the cache configuration page Redis by operation and maintenance personnel.
  1. Thread pool basis
  • For an ordinary thread pool, coreSize = 5, maxSize = 10 , 20 blocking queue length, and the thread insert is permanently performed, then continue to insert the thread, regardless of the number of threads in the pool and the corresponding response? A: This problem only understand the principle of operation of the thread pool can answer.
  1. Spring AOP
  • Internal class called AOP problem: a () method is used to output log @Around notes, b () method does not AOP annotations, but the internal b () method is called a () method, then calling b () method will be kind of how output? A: There will be a log output. Because this is a class called internally, while AOP is by proxy, the internal class call does not call the proxy class, so do not take the agency does not have the log output. If you want to have the log output, the need to obtain by AopProxy proxy object in that class (designated proxy), then B () method call via a proxy a () method;
  1. Why the decision to find a temporary job? A: Because the more familiar work here, looking for a challenge.

  2. The interviewer to ask questions. He asked business content, technology stack.

III. 12.13 mushroom Street dihedral Senior Java Developer

The main project is to introduce a whole, a total time of four minutes.

  1. Dynamic Templates
  • Main dynamic process templates have been more skilled, this aspect of the process introduces no problem.
  • Ask questions:
    • (1) dynamic template data source from where? A: The resource directory registration, available through various data services;
    • (2) dynamic template data inside how come? A: After a user adds a template, fill data entry;
  1. There Heap Dump and database connection pooling optimization experience, how to do?

  2. Dynamic summary statistics

  • The interview is an absolute minefield . When this part of the narrative, I explained that the project is my design. But in describing the design of the project, he did not like last description is clear, but the description Caton, middle once difficult to continue. The design must form part of the manuscript, and the skilled expression, or just the opposite.
  1. Resume writing efficiency optimization statistics, specifically how to do it?
  • Two starting point for optimization.

  • The first is the size, we need some summary results are statistically multiple tables. Originally, when implemented, due to the requirements of a hurry on the line, there are performance requirements, so at that time colleagues write, when additions and deletions to the data, our data services triggered the subscription, notification cluster events for all service data updates, all services and queries were launched five tables, cached query results after treatment.

    In other words, once the data change will result in a five inquiry services, if there are ten cluster service, then the data will trigger a change fifty times the query. But from a business perspective, change the data in a table only need to clear the cache to the table, four other cache table does not need to be modified, it is too coarse, so my first step is to fine particle size level of the table.

  • The second is the historical data. Because our business scenario is to allow information inquiry period, while business scenarios there are restrictions: the historical data prior to today can not be changed. That we can put a long history of data cache, and after today's data as a short-term buffer, modify the data trigger only short-term cache updates.

  1. Written ZK use of distributed lock on your resume, why should we use this implementation? Usage scenario is kind of how?
  • Distributed under lock industry is often the case with Redis of setnx to achieve, but it was our Redis not build up a cache using a Memcache; In addition, our registry is based on ZK, ZK instantaneous and order of the nodes can be Implementation of distributed lock function, so I use.

  • Usage scenarios: Our Summary too much trouble, and therefore a relatively long time to conduct a summary. Although the aggregate results are usually placed in the cache, but if there is no data in the cache at a time, and a large number of concurrent summarize the results of the query, it will lead to penetration. So while my colleagues and I built a Bloom filter to prevent caching penetration scenarios.

    On the other hand, while a large number of concurrent query summary results, because the services do load balancing, so the cluster service will receive the request, the cache does not aggregate results, a large number of services will all be calculated. But in fact only one service can be calculated cache, calculate other services are resource waste.
    So I need to use a summary of the business of a distributed lock with a query as a lock to get into the lock service is calculated, and is responsible for the calculation result into the cache, other services trying to acquire the lock when the failure, It returns a default result, thus avoiding unnecessary calculations.

  1. What needs to ask the interviewer questions? He asked business content, technology stack.

IV. 12.20 mushrooms street on three sides Senior Java Developer (failed)

Total 40 minutes;

  1. Self introduction

  2. Written JVM optimize the experience on a resume, how to do?

  3. If the design of an automated monitoring system, how to design? How to achieve?

  • Because just JVM optimization process aimed at monitoring a pressure test problem, I introduced a cause of the problem by checking JVM process. So the interviewer raised this issue.
  • Automatic monitoring system for the design, I understand there are ES, Logstash, Kibana open source suite for log collection and monitoring, but not too specific I understand;
  • If our system is based on the realization, it should be based on our registration center to develop a new new monitoring service. Our registration center WAR package size, corresponding to the service registry ZK cluster. So the basic idea of ​​the new monitoring service designed heartbeat packets should be sent to all registered services on ZK, metrics collection system where each service server, run the service-related information;
  • The interviewer asked: What indicators which servers and services monitored? How to monitor?
    • A: The server metrics should monitor server CPU utilization, memory usage, number of connections each state network, network bandwidth; indicators should be monitored in the service of the heap Heap capacity per unit time the number of GC, the number of threads in each state;
    • Specific monitoring methods I think Java API interface should be given access to this information, because before I had to do business operations logging system, there are records to obtain IP information; at that time the tune of Java API, so I I feel there should be a similar call the method;
  1. How to design an index?
  • I say that is because we are currently monitoring system logs operating business is to save the data into the database, it referred to the problem.
  • My answer:
    • We build the main index for several situations:
    • More use of query field consider building an index;
    • More may be used to filter, sort fields; as the more common type of time;
    • Pull-down tree ID field uniquely identifies properties;
  1. ZK how to use? Election mechanism?
  • ZK is mentioned because I mention our service registration to the registry, the registry is ZK-based;
  • My ZK projects come into contact with, mainly when I service in order to save computing cluster computing resources, so as to use ZK distributed lock; in addition ZK also used to register our registration centers;
  1. Internet architecture to know what?
  • Answered spike system, specifically somewhat forgotten. (Propane propane can look at the history of the article, spike burst my text)
  1. Spring thoughts? Acting how?
  • Spring's main idea is described according to previously written blog
  1. Why did you choose to use SSM framework? Why use Spring boot?
  • The main reason for using SSM framework is this whole industry is relatively common framework, but also the general framework sector;
  • The reason is that the use of Spring Boot, Spring and Spring MVC had a lot of profiles, more complicated, and Spring Boot will come in many configurations to integrate, use annotation-based configuration is simple and convenient.
  1. Common understanding of Internet technology stack What?
  • In addition to writing a resume, also mentioned for Nginx reverse proxy and load balancing; if Nginx reverse proxy to reach the limit, you can use F5, LVS expand further complicated by the amount of support, but we did not reach this amount of concurrency degree, so there is no longer understood up.
  1. Spike system, the cache consistency with the database how to ensure? Inventory, network fluctuations.

Ramble

It can be seen on each side is not easy to Ha, you really want to learn it.

Tips: I have a reader already faces into our company, my colleagues, and also propane and propylene him about the first floor of the cafe to drink tea, that time will be shared out.

I Ao C, a tool in the Internet beds many people.

Writing is not easy, not wanting to be white whore , you are "triple" is the greatest power propane propylene creation, we see you next time!


Article continually updated, you can search for micro-channel " Third Prince Ao propionate " the first time to read, reply [ data ] [ Interview ] [ Resume ] have first-tier manufacturers interview data and I am ready to resume template, the paper GitHub https://github.com / JavaFamily already included, there is a complete interview giant test center, welcomed the Star.

The more you know, the more you do not know

发布了54 篇原创文章 · 获赞 1万+ · 访问量 85万+

Guess you like

Origin blog.csdn.net/qq_35190492/article/details/104785794