当前位置:网站首页>Ali on three sides, it's really difficult to successfully get the offer rated P7
Ali on three sides, it's really difficult to successfully get the offer rated P7
2022-07-02 12:55:00 【Follow me to learn java】
If you want to work in a big factory, you can say that thousands of troops are crossing a single wooden bridge . We must pass the tests , Brush problem It must be essential .
As a typical representative of Internet technology in China , Alibaba's technology has always been the focus of attention . Can work in Ali , Is the goal and dream of many developers , To help developers improve their interview skills 、 Interview of Internet companies with high efficiency , Xiao Bian took the latest one to Ali offer The interview experience of programmers is shared with you , I hope that helps .

one side
- Self introduction.
- Monitoring in the project : What are the common monitoring indicators ?
- What are the technologies involved in microservices and what problems should be paid attention to ?
- Registry what do you know about ?
- consul Do you understand the reliability of ?
- consul Have you ever gone into the mechanism of ? Have you compared it with other registries ?
- The project with Spring More , Do you understand Spring Principle ?AOP and IOC Principle
- Spring Boot In addition to automatic configuration , Compared with traditional Spring What are the other differences ?
- Spring Cloud What do you know ?
- Spring Bean Life cycle of
- HashMap and hashTable difference ?
- Object Of hashcode Method overridden ,equals Should we change the method ?
- Hashmap Thread unsafe scenario
- Online services CPU What should I do ? What measures can we take to find the problem
- JDK Which thread pools are in ? By the way, I've talked about thread pools all over the world
- Should try to avoid in where Used in clauses != or <> The operator , Otherwise, the engine will discard the index and scan the whole table
- SQL Order of indexes , Order of fields
- see SQL Is index used ?( What are the tools )
- TCP and UDP The difference between ?TCP How to be reliable in the process of data transmission ?
- Let's talk about the sort algorithm you know
- Find the median of an array ?
Two sides
Do you have any questions for me ?( Regular questions )
- Self introduction. 、 Work experience 、 Technology stack
- What technology did you learn in the project ?
- Granularity of microservice segmentation ?
- How to guarantee the high availability of microservices ?
- Load balancing and reverse agent , Isolation , Current limiting , Downgrade , Timeout and retry , Roll back , Stress testing and contingency plans
- Common load balancing , How to use , Can you say something ?
( Technical questions )
- http Redirect
- DNS Load balancing
- Reverse agent load balancing
- IP Load balancing (LVS-NAT)
- Direct routing (LVS-DR)
- IP Tunnel (LVS-TUN)
- What benefits can gateways bring to back-end services ?
- Spring Bean Life cycle of
- xml Configured in init、destroy How can methods call specific methods ? The mechanism of reflection
- Object Methods in class
- Whether the object comparison is the same
- hashmap put How to judge whether the method is repeated when storing
- Object toString Methods are commonly used , Why rewrite this method
- Set and List difference ?
- ArrayList and LinkedList difference
- If access to the same data ,ArrayList and LinkedList Who takes up more space ?
- Set Is the order of storage orderly ?
- common Set What are the implementations of ?
- TreeSet What are the requirements for storing data ?
- HashSet The underlying implementation of ?
- TreeSet Have you seen the underlying source code ?
- HashSet Is it thread safe ? Why not thread safe ?
- Java Which thread safe Map?
- HashTable Do you know ?
- How to ensure thread safety ?
- synchronized、lock
- volatile The atomicity of ? Why? i++ This doesn't support atomicity ? The reason why atomicity can't be guaranteed in terms of the design of Computer Principles happens before principle
- cas operation
- lock and synchronized The difference between ?
- Fair and non-fair locks
- Java Read-write lock
- What is the main problem of read-write lock design ?
- In addition to writing Java Code , And front-end code , Do you know what the front-end framework is ?
- MySQL Paging query statement
- MySQL Transaction characteristics and isolation levels
Two 、 Concurrency of transactions
- What scene does non repeatable reading appear in ?
- sql having Usage scenarios of
- One of the front browser addresses http How is the whole process from request to backend ?
- http Default port ,https Default port
- DNS Do you know what it is ?
- Use your ide What is it ? You can say idea A few commonly used shortcut keys ?
- What do you use for code version management ?
- git rebase and merge What's the difference? ?
Does your company work overtime ?( Digression )
Give an example to answer :
The project with Spring More , Do you understand Spring Principle ?AOP and IOC Principle
answer :(1). IoC(Inversion of Control) The container controls the relationship between program objects , Not in traditional implementation , Directly controlled by program code . Control is transferred from the application code to the external container , The transfer of control is called reversal . about Spring for , Is the Spring To control the life cycle of an object and the relationship between objects ;IoC There's another name ——“ Dependency injection (Dependency Injection)”. Understand from the name , So called dependency injection , That is, the dependencies between components are determined by the container during the runtime , That is to say, the container dynamically injects some kind of dependency into the component .
(2). stay Spring In the way we work , All classes will be in spring Register... In container , tell spring This is something , What do you need , then spring When the system is running properly , Offer you what you want , At the same time, give you to other things that need you . Creation of all classes 、 Destroyed by spring To control , That is to say, it is no longer the object that references it that controls the object's life cycle , It is spring. For a specific object , It used to control other objects , Now it's all the objects that are spring control , So this is called inversion of control .
(3). In system operation , Dynamically provide some object with other objects it needs .
(4). The idea of dependency injection is realized through reflection mechanism , When instantiating a class , It calls the class through reflection set Methods will be saved in advance in HashMap Class attributes in the class are injected into the class . To make a long story short , In the traditional way of object creation , It's usually up to the caller to create an instance of the callee , And in the Spring The work of creating callees in is done by Spring To complete , Then inject the caller , It's called dependency injection or Inversion of control . There are two ways to inject : Dependency injection and setup Injection ; IoC The advantages of : Reduced coupling between components , Reduces the complexity of replacing business objects , Make it flexible to manage objects .
AOP(Aspect Oriented Programming)
(1). AOP Aspect oriented programming is based on IoC, It's right OOP A useful addition to ;
(2). AOP Use a method called “ Crosscut ” Technology , Dissect the inside of the sealed object , And put those influences on The common behavior of multiple classes is encapsulated into a reusable module , And call it “Aspect”, In other words . So-called “ aspect ”, In short , It's not about business , But it is called by the business module Logic or responsibility , Like logging , Ease of reducing system duplication , Reduce the coupling between modules , And is conducive to the future of operability and maintainability .
(3). AOP It represents a horizontal pass system , take “ object ” It's like a hollow cylinder , It encapsulates the properties and behaviors of objects ; Aspect oriented programming method , Is to cut this cylinder in the form of a section , Selectively provide business logic . and The open section , It's called “ aspect ” 了 . Then it restores these cut sections with its skillful hand of seizing the sky skill , Leave no trace , But it's done .
(4). Realization AOP Technology , There are two main categories : One is to adopt dynamic agent technology , Using the method of intercepting messages , Decorate the message , To replace the execution of the original object behavior ; The other is static weaving , Introduce specific syntax to create “ aspect ”, This allows the compiler to weave information about “ aspect ” Code for .
(5). Spring Realization AOP:JDK Dynamic proxy sum CGLIB agent JDK A dynamic proxy : Its proxy object must be the implementation of an interface , It accomplishes the proxy of the target object by creating an interface implementation class during runtime ; The two core classes are InvocationHandler and Proxy. CGLIB agent : The implementation principle is similar to JDK A dynamic proxy , But the proxy object it generates during runtime is a subclass of the target class extension .CGLIB It's an efficient code generation package , The bottom is dependent on ASM( Open source java Bytecode editing class library ) Operating bytecode , Performance ratio JDK strong ; Need to introduce package asm.jar and cglib.jar. Use AspectJ Injection section and @AspectJ In fact, the annotation driven aspect is realized by dynamic proxy .
(6). AOP Use scenarios :
- Authentication Permission check
- Caching cache
- Context passing Content delivery
- Error handling Error handling
- Lazy loading Delay loading
- Debugging debugging
- logging, tracing, profiling and monitoring logging , track , Optimize , calibration
- Performance optimization performance optimization , Efficiency check
- Persistence Persistence
- Resource pooling Resource pool
- Synchronization Sync
- Transactions Business management
in addition Filter Implementation and struts2 The implementation of the interceptor is AOP The embodiment of thought .
Ali's interview scene and interview answers ( Document summary )

Last
I also have a collection of Java Face to face interview , Take this opportunity to give it to my readers for free :

Altogether 14 Topics , Enough readers for the interview , It also saves time for friends to search for information everywhere and organize themselves ! Friends in need : Official account :JavaAC, Free access
There are already readers who rely on this Java The interview knowledge guide was good offer 了 , Dear readers, come to me and get it for free
Internet Java Engineer Interview Questions

边栏推荐
- Explain in detail the process of realizing Chinese text classification by CNN
- Visual studio efficient and practical extension tools and plug-ins
- Enhance network security of kubernetes with cilium
- Does C language srand need to reseed? Should srand be placed in the loop? Pseudo random function Rand
- Std:: vector batch import fast de duplication method
- 线性DP AcWing 896. 最长上升子序列 II
- Js1day (syntaxe d'entrée / sortie, type de données, conversion de type de données, Var et let différenciés)
- bellman-ford AcWing 853. 有边数限制的最短路
- 面渣逆袭:MySQL六十六问,两万字+五十图详解!有点六
- bellman-ford AcWing 853. Shortest path with side limit
猜你喜欢

应用LNK306GN-TL 转换器、非隔离电源

面渣逆袭:MySQL六十六问,两万字+五十图详解!有点六

国产免费数据仓库ETL调度自动化运维专家—TASKCTL

Js5day (event monitoring, function assignment to variables, callback function, environment object this, select all, invert selection cases, tab column cases)

js5day(事件监听,函数赋值给变量,回调函数,环境对象this,全选反选案例,tab栏案例)

Counter attack of flour dregs: MySQL 66 questions, 20000 words + 50 pictures in detail! A little six

Ntmfs4c05nt1g N-ch 30V 11.9a MOS tube, pdf

Floyd AcWing 854. Floyd求最短路

三面阿里,有惊无险成功拿到offer定级P7,只能说是真的难
![JDBC prevent SQL injection problems and solutions [preparedstatement]](/img/32/f71f5a31cdf710704267ff100b85d7.png)
JDBC prevent SQL injection problems and solutions [preparedstatement]
随机推荐
Js5day (event monitoring, function assignment to variables, callback function, environment object this, select all, invert selection cases, tab column cases)
线性DP AcWing 895. 最长上升子序列
spfa AcWing 852. SPFA judgement negative ring
Js1day (input / output syntax, data type, data type conversion, VaR and let differences)
Hash table acwing 841 String hash
JS6day(DOM结点的查找、增加、删除。实例化时间,时间戳,时间戳的案例,重绘和回流)
Interesting interview questions
Bom Dom
Some sudden program ideas (modular processing)
Oracle从入门到精通(第4版)
The redis development document released by Alibaba covers all redis operations
js4day(DOM开始:获取DOM元素内容,修改元素样式,修改表单元素属性,setInterval定时器,轮播图案例)
Hash table acwing 840 Simulated hash table
bellman-ford AcWing 853. 有边数限制的最短路
[opencv learning] [image histogram and equalization]
The UVM Primer——Chapter2: A Conventional Testbench for the TinyALU
ASP. Net MVC default configuration, if any, jumps to the corresponding program in the specified area
Structured data, semi-structured data and unstructured data
Docsify deploy IIS
About the loading of layer web spring layer components, the position of the layer is centered