# JavaEE Development

  • Alibaba Java Development Manual Ultimate Edition

  • java development foundations

  • java development advanced

  • Design patterns

    • Creation mode
    • Behavioral patterns
    • Structural mode
    • Functional programming
    • Reactive programming
    • Responsive Design Pattern
      • Redis developed a network event processor based on the Reactor pattern
      • Netty's overall framework adopts the Reactor model
      • Non blocking I/O in NIO operates in Reactor mode
  • Development Framework

    For architecture selection, the business has strong consistency (such as in the financial industry and e-commerce), and spring cloud is generally not used. In some cases, spring cloud may have some inconsistencies in order to meet high availability requirements. Dubbo is a good choice for architecture selection for strongly consistent business.

    • spring (spring cloud/restful)
      • Spring Foundation
      • Spring Advanced
    • dubbo (rpc)

      Refer to the official websitehttp://dubbo.apache.org/ (opens new window)

      • Transport layer netty
        • Netty's nio is different from Java's nio (which solves the problem of empty polling)
        • Reactor Thread Model
        • Zero-copy
        • Memory pool (reuse buffer)
      • Provide high-performance serialization tool support: Kryo and FST
  • Daily development and problem-solving tools

    • Java comes with tools
      • Visual Tools
        • JHSDB: A Debugging Tool Based on Service Proxy
        • JConsole: Java Monitoring and Management Control Platform
        • VisualVm: Multi Joint Fault Handling Tool
        • Java Mission Control: Sustainable online monitoring tool
      • Command Line Tools
        • jps: Virtual Machine Process Status Tool
        • jstat: Virtual Machine Statistics Monitoring Tool
        • jinfo:Java Configuration Information Tool
        • jmap:Java Memory Imaging Tool
        • jhat:Java Virtual Machine heap dump snapshot analysis tool
        • jstack:Java stack tracing tool
    • JProfiler/Eclipse Memory Analyzer
      • Memory Analysis Tools
      • JProfile has more powerful functions and can integrate ideas
    • Arthas
    • Brup Suite
      • Packet capturing tool
  • Personal learning methods sharing

    Putting aside the learning methods during undergraduate professional courses, here are some methods for advanced learning after work

    • Advanced Learning Evolution:
      • Fundamentals of Java
      • Deep understanding of jvm
      • Principles of Java Concurrent Programming
      • Analysis of Java and outsourcing
    • Study Recommendation Letter
      • Deep Understanding of JVM by Zhou Zhiming
      • Principles of Java Concurrent Programming "by Wang Wenjun
      • The Beauty of Java Concurrent Programming "by Zhai Luxu and Xue Bintian
Last Updated: 6/1/2023, 11:39:42 PM