2019.10.27 headlines interview preparation
resume
2019.06 - present Shanghai Huawei Development Engineer
Internship Department: 5G Development
Project: web development, operation and maintenance development, data processing
2019.06 so far Huawei internship
Python + Django + Javascript + Nginx + rabbitMQ + ELK
abnormal records based on the Django framework using Python development site basis process monitoring system, processes, process abnormal automatic recovery, send e-mail alerts, and to display and manage a Web interface. It completed the entire framework of independent design and on-line, to ensure that the department Web stability.
Using Python files inside the data processing and analysis, and complete web presence.
2019.06 - present site basis process monitoring system development engineer
1, based Django framework Python development site based process monitoring system;
2, using pymysql achieve abnormal process recorded using subprocess + ssh connected machine check process status, abnormal automatic recovery, using rabbitMQ for sending an alarm message and SMS notification message queue;
3 using JavaScript, Jquery, echarts and other developing Web interface to display and manage the process. 4, the entire framework designed and done by themselves independent on the line to ensure that the department Web stability.2018.12 - 2019.03 Huawei Cloud Feedback System Development Engineer
1, a frame views Spring boot + Mybatis + Redis + Restful technology based feedback system. 2, I am responsible for the project inside the rear end portion, using IDEA development tools, Git collaborative development
3, to achieve a login verification, release, delete, comments and other features.
IT skills: familiar with Python, Java, have a solid underlying data structure algorithms, familiar with Linux operating familiar with JavaScript page development;
job-related skills: Understanding Hadoop, understand redis, understanding machine learning, deep learning.
CET6: 520 Good English reading ability
ready
- Talk about Django framework
- Talk about process monitoring system
Run production services rely on many key processes to maintain. For example rabbit_mq consumer, script data analysis, site responsiveness, database health and the like. These processes are distributed on different machines, but also a huge number. In order to monitor these processes together, we developed a simple monitoring system. Configure service-related information through the front-end interface, the status of all processes can be viewed through the front-end. If there is abnormal packets will be sent based on message, if configured Abnormal automatic recovery, it will automatically restore service.
The underlying principle: ssh, ping, connect, urlopen, rabbit_mq message queue
Inadequate: Although the function is simple, but the stable operation. Which also has many deficiencies, particularly if the number of machines, then the monitoring system will be possible to manage a lot of trouble.
Optimization: can learn C / S mode, the client machine open-source framework for reporting information, the server aggregated monitoring.
- python file data analysis
5G modules for some of the generated files, some of the high-frequency statistical analysis functions.
rabbitMQ 和 kafaka
nginx
[X] Nginx related to load balancing algorithm
[X] principle
[x] How do Nginx efficient processing at high concurrency?
Nginx already mentioned above, the number of worker processes and CPU binding, internal worker process contains a thread loop efficiently process the request, it does contribute to efficiency, but this is not enough.
As a professional programmer, we can look at the brain open hole: BIO / NIO / AIO, asynchronous / synchronous, blocking / non-blocking ...
Juggling so many requests, you know, some request needs to happen IO, may take a long time, if waiting for it, it will slow down the processing speed of the worker.
Nginx uses a model of Linux epoll, epoll model based on event-driven mechanism, it can monitor multiple events are ready, if OK, then put epoll queue, the process is asynchronous. epoll queue worker simply loop processing from
Java
- [] Read-write lock https://www.cnblogs.com/DarrenChan/p/8619476.html
- [ ] hashtable、hashmap、concurrenthashmap
- [] The difference between sleep and wait
- [] Interfaces and abstract class distinction
- [] Collections arraylist linkedlist expansion difference
- [] When will STW, all the garbage collector will have it STW
- [] String str = new String ( "abc") operation of object generator has several
- [] Public protected private distinction
- [] Final and finally the difference? final can be used in the method parameters do?
- [] RuntimeException and non RuntimeException? A few examples of each? Let's say the file read and write when there will be anything unusual?
- [] How to achieve serialization? In addition to native Java serialization methods, sequence of what format?
[] Java IO (serialization, BIO, NIO, AIO)
spring boot base
- What Spring of principle,
- Ioc and
- AOP,
- Affairs,
- Multiple relationships of the bean,
- SpringMVC process
repeat
- [X] principle Redis implementation of distributed locks talk about
- [X] Redis cache to achieve what data is stored, how much time expired
- [X] In addition to distributed lock, Redis there any way to achieve: ZK
- [X] Redis how to use in the project, what characteristics
- Realization [x] distributed lock in addition to what Redis?
- [X] disadvantages compared with the advantages of caching hard drive, why cache
- [X] Redis what data cache holds / stores what format data
- [X] redis persistence
- [X] redis cache coherency
- hadoop
- [ ] mapreduce
- [ ] shuffle
- [] Data skew
- [] Number maptask of how control and reducetask
- [] Resourcemanager, nodemanager, applicationmanager and the like MRAppMaster
- [ ] hdfs
- [] Namenode and datanode how data exchange
- [] Datanode how data stored on a particular storage where
- [] Datanode bad how to restore (backup), each datanode have several copies, you can change it
- [ ]
- [ ] yarn
- [] How HDFS data is guaranteed not to lose?
- [] MR detailed process (please note detail, from the beginning, said RPC)
- [] YARN fault tolerance
- [ ] mapreduce
- zookeeper
- [] ZK implement the principle of distributed lock understand it? Do not know, but to understand how to implement the service registration and discovery
- [] Zk how to ensure high availability
- [] What is the realization of the principle of availability zk
Stream processing framework
- Design Patterns
- Singleton
- Consistent hashing algorithm
Hive
- Partition and sub-barrel
algorithm
Non-recursive binary tree traversal sequence
Reverse list (O (1))
Bubble Sort
The longest increasing subsequence
Dynamic Programming https://www.cnblogs.com/DarrenChan/p/8734203.html
Longest common substring
Top K problem https://www.cnblogs.com/DarrenChan/p/8796749.html
Micro-channel scan code to log design principles https://www.jianshu.com/p/047acc4190cb
01 backpack
Longest common substring
Binary serialization and de-serialization
Sequence preorder traversal binary tree configuration before reduction
LRU algorithm
Single chain odd bit increment, even bit descending sort
Matrix binary search (a two-dimensional matrix, in ascending order from left to right, top to bottom in descending order, to find whether there is a number in the matrix (similar to a binary search tree))
Internal array repeat request repeating section (1,2,3,1,2,3 seeking 1,2,3)
And if there are N bits binary tree path
Binary tree longest path
Implemented by the memory counter flow restrictor
Celebrity problem:
链接:https://www.nowcoder.com/discuss/115824 所有人都认识TA,但是TA不认识任何其他人 a [i] [j] = 1, i 认识 j a [i] [j] = 0, i 不认识 j a [i] [i] 置空 给定n*n的二维数组,有多少个名人?具体都是谁?
Delete all duplicate elements in the list
Enter a string String str, seeking index value of the most repeated number of characters
e.g.
input: "aabcbcbc"
Output: 2 (b and c all appeared three times, but in front of b c)
Scene questions:
- Online game not guarantee 100 card: long connection, message queues static resource allocation
- How do buy millet
- Grab a red envelope random algorithm to ensure fairness
- Microblogging high concurrency response
- A plurality of electrical reptile's data, how to store, how to find the same product the cheapest url
- A five-liter drums, a three-liter drums, how poured four liters of water can be unlimited use
- Functional design pieces to distribute orders?
- Audiobook automatically matches audio captions scenario-based questions, a large number of audio files, non-human can do, speech recognition to generate captions file matching, voice and subtitles subtitle file must be the same time, how to design?
- League Game H5 rankings, real-time updates, how?
- Hangzhou G20 image project needs cleaning windows, cleaning windows Hangzhou estimate how much you want?
database:
index:
Balanced tree, b and b + Tree Tree https://www.cnblogs.com/aspwebchh/p/6652855.html
Aggregation index (primary key generated balanced tree, and then look for), the general step of searching is to look in accordance with the corresponding id field and id again found in accordance with specific information. The purpose of indexing is to accelerate the id to find purpose of establishing the index to find specific information may be omitted in accordance with the multi-id field. For example: I want to check the name Amy's score results, indexed according to these two fields: <this way is called a covering index >
create index name_and_score on student(name, score); select score from student where name='小王';
The difference between b and b + Tree Tree
Database transaction isolation level
mysql and contrast hbase
mysql database default storage engine, what are the advantages
others:
- epoll
https://www.nowcoder.com/discuss/271862?type=2
Database infrastructure
• difference between relational and non-relational databases (respective merits)
• Common SQL statements (DDL, DML, DCL, TCL)
• the type of database join with distinction (inner join, outer join, cross join, natural join, self join), pay attention to the scene and applies the sql statement written
• The type of database index
• clustered index and non-clustered index difference (leaf node storing content)
• distinguish unique index and primary key index
• advantages and disadvantages of the index, when to use the index, when not to use the index (focus)
• underlying implementation (B + tree, why not use red-black tree, B tree) index
• B and B + tree tree realization
• Index the most left-prefix problem
• Mysql optimization (high frequency, index optimization, performance optimization)
• database engine reports, features and differences of Innodb and Myisam
• ACID database transactions (the four characteristics must be able to illustrate and understand thoroughly, such as atomic relevance and consistency, isolation, poor problem might arise)
• Set database isolation problem (dirty reads, non-repeatable read, modify lost, phantom read) will appear different
• isolation levels, Mysql and Oracle database isolation level, what are the
• The role of database connection pool
• Mysql table space way, their own characteristics
• Distributed Transaction
• database paradigm
• The data types of locks, locking way
• the role and use of view (how to delete, etc.)
• sub-library sub-table, master-slave replication, separate read and write. (I would not, did not come across)
• Where the project uses a database, how to use the
• Memcache and understanding Redis
Big Data and distributed
Under • Hadoop framework, structure and role of the individual components
• BASE principle, CAP principle
• consistency of the process algorithm Raft
• TIDB principle
• HBase storage principle of
• HDFS operating principle
• Hive understanding
• Spark understanding
• introduce a familiar design patterns (singleton, simple factory, observer mode, etc.)
• Write a singleton (starving mode and the lazy mode), thread-safe version
• MVC design pattern