logo
  • Algorithm
    Data Structure Algorithm Algorithm Overview
    Practice Problem
  • Programming
    Dev Environment
    Java Core Java 8 Java Concurrency Java Advanced Java App
    Javascript
    Design Pattern
  • Architecture
    Theory and Principle Computer Network
    Softwares Database and Cache Message Queue Docker DevOps
    Security
  • Cloud
    Cloud Knowledge
    Amazon AWS Google Cloud
  • Tutorial
    Jekyll Wordpress
    Angular Tutorial Angular App React Tutorial React App
    Mobile
    RESTful API Node.js Express.js
    Online Judge
    Synology ASP.NET Uncategorized
  • Project
  • Favorite
  • More
    Article Index Page Index
    Advanced Search
    RSS Feed Sitemap
    About
  • Production
Article Index
  • Algorithm
  • Data Structure 27
    • Data Structure - Overview
    • Data Structure - Linked List
    • Data Structure - Stack
    • Data Structure - Queue
    • Data Structure - Deque
    • Data Structure - LRU Cache
    • Data Structure - LFU Cache
    • Data Structure - Monotonic Queue
    • Data Structure - Skip List
    • Data Structure - Tree
    • Data Structure - Binary Search Tree
    • Data Structure - Red Black Tree - draft
    • Data Structure - N-ary Tree
    • Data Structure - B Tree
    • Data Structure - B+ Tree
    • Data Structure - Trie
    • Data Structure - Segment Tree
    • Data Structure - Fenwick Tree
    • Data Structure - HashMap
    • Data Structure - Heap
    • Data Structure - Bloom Filter
    • Data Structure - Graph
    • Data Structure - Graph Problems
    • Data Structure - Bipartite Graph
    • Data Structure - Directed Graph - Draft
    • Data Structure - Topological Sorting
    • Data Structure - Minimum Spanning Tree - Draft
  • Algorithm 21
    • Algorithm - Sorting
    • Algorithm - Bit Manipulation
    • Algorithm - Binary Search
    • Algorithm - Two Pointers
    • Algorithm - Divide and Conquer
    • Algorithm - BFS and DFS
    • Algorithm - Combination and Permutation
    • Algorithm - Union Find
    • Algorithm - Dynamic Programming
    • Algorithm - Sequence DP
    • Algorithm - Two Sequences DP
    • Algorithm - Matrix DP
    • Algorithm - Knapsack Problems
    • Algorithm - Sweep Line
    • Algorithm - Sqrt Decomposition
    • Algorithm - Minimax Algorithm - Draft
    • Algorithm - Map Reduce - Draft
    • Algorithm - Pre Sum - Draft
    • Algorithm - Random
    • Algorithm - Coordinate
    • Algorithm - Math
  • Algorithm Overview 8
    • Algorithm - Templates
    • Algorithm - Best Practice
    • Algorithm - Java Best Practice
    • Algorithm - Useful Math Knowledge
    • Algorithm - Template for Subset Problems
    • Algorithm - Serialize and Deserialize Tree
    • Algorithm - Chi squared test for randomness
    • Algorithm - Problem List at LeetCode
  • Practice Problem 8
    • Problem - Custom List
    • Problem - Word Counter
    • Problem - Image Cache
    • Problem - Random ID
    • Problem - Custom Thread Pool
    • Problem - Versioned Key‐Value Store
    • Problem - Word Rank
    • Problem - Number in Base Representation
  • Programming
  • Dev Environment 13
    • Getting Started with Linux
    • Getting Started with macOS
    • Installing VirtualBox and Creating Ubuntu VM
    • Sharing Files between Host and Guest in VirtualBox
    • Setting up Java Development Environment on Ubuntu
    • Setting up Java Development Environment on Mac
    • Installing and Using Git
    • Git Configuration
    • Installing and Using Atom
    • Installing and Using Visual Studio Code
    • Installing MySQL and Workbench on Mac
    • Installing MongoDB on Ubuntu and Mac
    • Using MongoDB in Shell
  • Java Core 21
    • Java Core - Basic
    • Java Core - Tricks
    • Java Core - Formatting
    • Java Core - Array and List
    • Java Core - Iterator
    • Java Core - Enum
    • Java Core - Scanner
    • Java Core - Collection
    • Java Core - ArrayList and LinkedList
    • Java Core - Stack, Queue and Deque
    • Java Core - Set
    • Java Core - Map
    • Java Core - Comparable vs Comparator
    • Java Core - Generics
    • Java Core - Generics Type Erasure
    • Java Core - Static Block and Initialization Block
    • Java Core - BitSet
    • Java Core - Socket
    • Java Core - IO
    • Java Core - NIO
    • Java Core - IO vs NIO
  • Java 8 10
    • Java 8 - Tricks
    • Java 8 - New Features
    • Java 8 - Functional programming
    • Java 8 - Higher Order Functions
    • Java 8 - Functional Interfaces
    • Java 8 - Functional Composition
    • Java 8 - Stream API
    • Java 8 - Predicate
    • Java 8 - Lazy Execution with Lambda
    • Java - Java 11,10,9,8,7 - Draft
  • Java Concurrency 17
    • Java Concurrency - Note
    • Java Concurrency - Overview
    • Java Concurrency - MultiThreading
    • Java Concurrency - wait, notify and notifyAll
    • Java Concurrency - Thread Pool
    • Java Concurrency - Callable and Future
    • Java Concurrency - Fork Join
    • Java Concurrency - Synchronization
    • Java Concurrency - Synchronizers
    • Java Concurrency - Volatile Keyword
    • Java Concurrency - ThreadLocal
    • Java Concurrency - Thread Signaling
    • Java Concurrency - Dead Lock
    • Java Concurrency - ConcurrentSkipListMap
    • Java Concurrency - Volatile, Final and Atomics
    • Java Concurrency - BlockingQueue
    • Java Concurrency - Reading Files in Parallel
  • Java Advanced 15
    • Java Advanced - Java Virtual Machine
    • Java Advanced - JIT Compiler
    • Java Advanced - Garbage Collection
    • Java Advanced - Java Memory Model
    • Java Advanced - JVM Parameters
    • Java Advanced - ClassNotFoundException vs. NoClassDefFoundError
    • Java Advanced - Hashmap vs WeakHashMap
    • Java Advanced - Abstract Class Vs Interface
    • Java Advanced - Object Class - Draft
    • Java Advanced - hashCode() in Java - Draft
    • Java Advanced - Shallow Copy vs Deep Copy
    • Java Advanced - Cryptography
    • Java Advanced - Web Service
    • Java Advanced - Message Queue - Draft
    • Java Advanced - Process and ProcessBuilder - Draft
  • Java App 20
    • Java - Thread Dumps & Analysis
    • Building Web Server with Java Socket
    • Building Web Server with Netty
    • Checking Which JDK Eclipse is Using
    • Using Java Debugger
    • Java Remote Debugging with Eclipse
    • Remote Debugging JSP Application
    • Running JUnit Tests in Command Line
    • Dynamic Tests with JUnit 5 in Eclipse
    • Dynamic Tests with JUnit 5 in Command Line
    • Creating MySQL Container with Docker File for Game Store App
    • Building Website with JSP and MySQL
    • Building Website with JSP and MongoDB
    • Creating MongoDB Image with Dockerfile
    • Data Persistence with JPA & Eclipselink
    • Data Persistence with Hibernate
    • Scripting Java With Rhino
    • Running JavaScript at Server Side with Rhino
    • Calling Java Class from Javascript
    • Data Fix with Javascript For Web Application
  • Javascript 6
    • JavaScript - Basic
    • JavaScript - Modern
    • JavaScript - ES5
    • JavaScript - ES6
    • JavaScript - Async Call in Loop[Draft]
    • JavaScript - Test JavaScript with Mocha(Draft)
  • Design Pattern 24
    • Design Pattern - Overview
    • Design Pattern - Singleton
    • Design Pattern - Factory
    • Design Pattern - Builder
    • Design Pattern - Prototype
    • Design Pattern - DTO - Draft
    • Design Pattern - Adapter
    • Design Pattern - Bridge
    • Design Pattern - Composite
    • Design Pattern - Decorator
    • Design Pattern - Facade
    • Design Pattern - Flyweight
    • Design Pattern - Proxy
    • Design Pattern - Command
    • Design Pattern - Interpreter
    • Design Pattern - Iterator
    • Design Pattern - Mediator
    • Design Pattern - Memento
    • Design Pattern - Null Object
    • Design Pattern - Observer
    • Design Pattern - State
    • Design Pattern - Strategy
    • Design Pattern - Template Method
    • Design Pattern - Visitor
  • Architecture
  • Theory and Principle 17
    • Distributed System - Common Principles
    • Distributed System - Consensus Protocols
    • Distributed System - Computer Network
    • Distributed System - DNS and CDN
    • Distributed System - RPC and REST
    • Distributed System - Load Balancing and Reverse Proxy
    • Distributed System - Caching
    • Distributed System - Database Scaling
    • Distributed System - Application layer
    • Distributed System - Asynchronism
    • Distributed System - Real World Architectures
    • Google File System - Draft
    • Google Map Reduce - Draft
    • Google BigTable- Draft
    • Hadoop Architecture - Draft
    • Redis Architecture - Draft
    • Node.js event loop architecture - Draft
  • Computer Network 2
    • Networking Terminology, Interfaces, and Protocols
    • IP Addresses, Subnets, and CIDR Notation
  • Softwares 53
    • Docker - Introduction
    • Docker - Hypervisor vs Container
    • Docker - Installation - Draft
    • Docker - Real World Usage - Draft
    • Kubernetes - Introduction - Draft
    • Kubernetes - Installation - Draft
    • Kubernetes - Real World Usage - Draft
    • Maven - Introduction
    • Maven - Nexus and Maven
    • Maven - Installation - Draft
    • Maven - Real World Usage
    • Jenkins - Introduction
    • Jenkins - Installation - Draft
    • Jenkins - Real World Usage - Draft
    • Vagrant - Introduction
    • Vagrant - Installation - Draft
    • Vagrant - Real World Usage - Draft
    • Nginx - Introduction
    • Nginx - Installation - Draft
    • Nginx - Real World Usage - Draft
    • ZooKeeper - Introduction - Draft
    • ZooKeeper - Installation - Draft
    • ZooKeeper - Real World Usage - Draft
    • Redis - Introduction - Draft
    • Redis - Installation - Draft
    • Redis - Real World Usage - Draft
    • Memcached - Introduction - Draft
    • Memcached - Installation - Draft
    • Memcached - Real World Usage - Draft
    • Cassandra - Introduction - Draft
    • Cassandra - Installation - Draft
    • Cassandra - Real World Usage - Draft
    • Influxdb - Introduction - Draft
    • Influxdb - Installation - Draft
    • Influxdb - Real World Usage - Draft
    • Kafka - Introduction - Draft
    • Kafka - Installation - Draft
    • Kafka - Real World Usage - Draft
    • Hadoop - Introduction - Draft
    • Hadoop - Installation - Draft
    • Hadoop - Real World Usage - Draft
    • Spark - Introduction - Draft
    • Spark - Installation - Draft
    • Spark - Real World Usage - Draft
    • Storm - Introduction - Draft
    • Storm - Installation - Draft
    • Storm - Real World Usage - Draft
    • Splunk - Introduction - Draft
    • Splunk - Installation - Draft
    • Splunk - Real World Usage - Draft
    • Elasticsearch - Introduction - Draft
    • Elasticsearch - Installation - Draft
    • Elasticsearch - Real World Usage - Draft
  • Database and Cache 3
    • Redis - Tutorial
    • Redis - Commands Quick Reference
    • Redis - Using Redis in Java
  • Message Queue 1
    • Kafka
  • Docker 14
    • Installing and Using Docker on Ubuntu
    • Installing Docker Toolbox and Kitematic on Mac
    • Using MySQL Container for JSP Application
    • Creating MySQL Image with Docker File
    • Backing up MySQL Database Hosted in Docker Container
    • Serving Static Website With Nginx In Docker
    • Serving JSP Application With Tomcat In Docker
    • Enabling Tomcat Debugging in Docker for Eclipse
    • Creating Tomcat Image with Docker File
    • Running Multiple Containers with Docker Compose
    • Creating Docker Machine with More Disk Space
    • Installing Microsoft SQL Server in Docker
    • Creating Docker Container with Bash Script[Draft]
    • Accessing Website Hosted in Docker of VirtualBox from Another Machine
  • DevOps 6
    • Installing Nginx on macOS
    • Setting Up Reverse Proxy with Nginx for Node Server
    • Using Nginx as Load Balancer
    • Installing and Using Splunk on Linux
    • Installing Spark on Ubuntu
    • Real Time Visibility with TIGK
  • Security 4
    • Cyber Attacks
    • How To Store Passwords In a Secure Way?
    • Securely Implement Remember Me
    • Prevent Security Vulnerabilities in Web Development
  • Cloud
  • Cloud Knowledge 2
    • Cloud Services
    • Deploying Web Applications to Cloud Services
  • Amazon AWS 31
    • AWS-Overview
    • AWS-Billing Alarm
    • AWS-S3 Storage
    • AWS-CloudFront
    • AWS-Storage Gateway
    • AWS-EC2-Instance
    • AWS-EC2-Elastic Block Store
    • AWS-EC2-CloudWatch
    • AWS-EC2-Command Line
    • AWS-EC2-IAM Roles
    • AWS-EC2-User Data and Metadata
    • AWS-EC2-Elastic File System
    • AWS-EC2-Placement Groups
    • AWS-Database-Overview
    • AWS-Database-RDS
    • AWS-Database-Aurora
    • AWS-Database-DynamoDB
    • AWS-Database-Redshift
    • AWS-Database-Elasticache
    • AWS-Route53
    • AWS-VPC-Custom VPC
    • AWS-VPC-NAT
    • AWS-VPC-Access Control Lists
    • AWS-VPC Flow Logs
    • AWS-VPC-Bastion Hosts, Direct Connect and End Points
    • AWS-Elastic Load Balancer
    • AWS-Auto Scaling Groups
    • AWS-CloudFormation
    • AWS-Elastic Beanstalk
    • AWS-Applications
    • AWS-Amazon Lambda
  • Google GCP 7
    • GCP-Overview-Draft
    • GCP-Computing and Hosting
    • GCP-Storage
    • GCP-Databases
    • GCP-Networking
    • GCP-Big Data
    • GCP-Machine Learning
  • Frontend
  • Angular Tutorial 16
    • Angular - Getting Started with Angular CLI
    • Angular - TypeScript
    • Angular - HTTP and HttpClient - Draft
    • Angular - Observable and Reactive Programming - Draft
    • Angular - Zone.js - Draft
    • Angular - Components
    • Angular - Components 2
    • Angular - Modules
    • Angular - Directives
    • Angular - Dependency Injection
    • Angular - Bootstrap
    • Angular - Routes and Navigation
    • Angular - Forms
    • Angular - Pipes
    • Angular - Advanced Topics - Draft
    • Angular - Testing - Draft
  • Angular App 13
    • First Angular App
    • Building CRUD Application With Angular
    • Creating Web App and RESTful API with MEAN Stack
    • Building Web Application with Angular
    • Deploying Game Store Angular App to Netlify
    • Continuously Deploy Angular App to GitHub Pages using Travis-CI
    • Deploying Angular App to Heroku as Static Website
    • Deploying Angular App to Heroku with Express Server
    • Continuously Deploy Angular App to Heroku using Travis-CI
    • Fixing Issue when Deploying App to Heroku via Travis-CI
    • Building Online Text Compare Tool with Angular
    • Deploying Text Compare Angular App to Docker
    • Deploying Text Compare Angular App to Netlify
  • React Tutorial 3
    • Getting Started with React
    • Basic Knowledge of React
    • Flux and Redux
  • React App 21
    • Building Web Application with React
    • Building Web Application with React and Redux
    • React Router and Client Side Routing
    • Deploying Game Store React App to Netlify
    • Deploying Game Store React App to Azure with FTP
    • Introduction of Course Player
    • Building Realtime Web Application with WebSocket
    • Building Realtime Application with SignalR
    • Building Course Player with SignalR and ASP.NET
    • Building Course Player with Node.js and Socket.IO
    • Deploying Socket.IO App to Heroku
    • Deploying Socket.IO App to Azure
    • Building Course Player with React and Socket.IO
    • Deploying React and Socket.IO App to Heroku
    • Continuously Deploy React and Socket.IO App to Heroku with Travis-CI
    • Creating Full Stack App with React and Node.js
    • Building Online Code Editor with React and Express
    • Building Online Chinese Dictionary with React and Express
    • Deploying Full Stack React App to Heroku
    • Continuously Deploy Full Stack React App to Heroku and Netlify with Travis-CI
    • Continuously Deploy Full Stack React App to Heroku with Travis-CI
  • Mobile 11
    • Mobile App Development
    • Building iOS App with Xcode
    • Setting up Android Development Environment on Mac
    • Building Android App with Android Studio
    • Setting up .Net Development Environment on Mac
    • Cross-platform Mobile Apps Development with Xamarin
    • Building iOS App with Xamarin
    • Building Android App with Xamarin
    • Building Course Player with Xamarin
    • Installing and Using Cordova on macOS
    • Building Mobile App with React Native - Draft
  • Backend
  • RESTful API 11
    • Micro Service & RESTful API[Draft]
    • Creating RESTful API with Dummy Server
    • Building RESTful API with ASP.NET Core
    • Testing RESTful API with Postman
    • Deploying ASP.NET RESTful API to Azure
    • Creating RESTful Web Services with Spring Boot
    • Building RESTful API with Spring Boot
    • Deploying Spring Boot RESTful API to Heroku
    • Continuously Deploy Spring Boot App to Heroku with Travis-CI
    • Building RESTful API with Express And MongoDB
    • Creating RESTful Web Services with Jersey
  • Node.js 14
    • Installing Node.js and NPM
    • Using Node.js and NPM
    • Using Yarn to Manage Packages
    • Security Vulnerability of Dependencies for Node.js App
    • QPS and Event Loop - draft
    • Creating Http Server with Node.js
    • Running C and Java in Node.js
    • Calling spawn with Arguments[Draft]
    • Building Socket.IO Application with ExpressJS[Draft]
    • Hosting Node.js Application in Docker[Draft]
    • Working with Environment Variables in Node.js[Draft]
    • Deploying Node.js Application to Amazon EC2
    • Building Cross-platform Desktop Apps with Electron
    • Converting Web App to Desktop App with Electron
  • Express.js 12
    • Getting Started with Express
    • Middleware
    • Logging with Morgan
    • Logging with Winston
    • Combine Morgan & Winston
    • Express Routing
    • Template Engine
    • Express Security - Draft
    • Process Manager - Draft
    • Authenticating Users with Passport - Draft
    • Using Express to Serve Static Files
    • Versioning RESTful API - Draft
  • Personal Website
  • Jekyll 24
    • Setting up Personal Website on GitHub Pages(Draft)
    • Setting up Personal Website on GitLab Pages
    • Setting up Jekyll on Ubuntu and macOS
    • Setting up Jekyll on Windows 10
    • Cannot Start Jekyll at Specific Port
    • Jekyll - Liquid
    • Jekyll - Usage and Customization
    • Jekyll - Google Analytics - Draft
    • Jekyll - Comments with Disqus
    • Jekyll - Social Share Buttons
    • Jekyll - Social Share Buttons with ShareThis
    • Jekyll - Progress Bar
    • Jekyll - Pagination
    • Jekyll - Highlighting
    • Jekyll - Search Function for Static Website - draft
    • Jekyll - Math Symbols with MathJax
    • Jekyll - Diagram with Mermaid
    • Jekyll - SEO
    • Jekyll - Performance Optimization
    • Jekyll - Security
    • Continuously Deploy Jekyll Website to GitHub Pages with Travis-CI
    • Deploying Personal Website with Custom Domain
    • Deploying Jekyll Website to Netlify
    • Personal Site
  • Wordpress 1
    • Setting up WordPress in Docker
  • Project
  • Online Judge 15
    • Online Judge - Building Web App with MEAN Stack
    • Online Judge - Backend RESTful API Server
    • Online Judge - Frontend with Angular
    • Online Judge - User Authentication
    • Online Judge - Remember Me
    • Online Judge - Export Data
    • Online Judge - Import Data
    • Online Judge - Rich Text Editor
    • Online Judge - Code Editor
    • Online Judge - Progress Bar
    • Online Judge - Judging System
    • Online Judge - Others
    • Online Judge - Deploying Full Stack Angular App to Heroku
    • Online Judge - Continuously Deploy MEAN Stack App to Heroku and Netlify with Travis-CI
    • Online Judge - Deployment with Shell Script - Draft
  • Others
  • Synology 6
    • Synology Overview
    • SSH into Synology NAS
    • Hosting Website on Synology NAS - Draft
    • Best Way to Back Up Files with Synology NAS
    • Getting Repositories through GitHub API
    • Backup GitHub Repositories to Synology NAS
  • ASP.NET 4
    • Deploying ASP.NET MVC Application to IIS
    • Deploying ASP.NET MVC Application to Azure
    • Video Is Not Loaded Properly From IIS Localhost
    • Tricks in ASP.NET MVC
  • Uncategorized 24
    • Cross Domain Access for RESTful Web Services
    • Installing Jenkins On Ubuntu
    • Installing Jenkins in Docker
    • Analyzing Performance Issue with Splunk
    • Installing Elasticsearch in Ubuntu
    • Basic Queries in Elasticsearch
    • Advanced Topics in Elasticsearch
    • Converting Microsoft Word to Markdown
    • Common Math Formulas
    • Hashing Passwords with Bcrypt
    • Source Code Search with OpenGrok
    • Unable to Run Perl Script
    • Upgrading Angular App from 5 to 6
    • Migrating Repositories From GitHub to GitLab
    • Tracking Changes with Blame View on GitHub
    • MathJax Cheat Sheet for Mathematical Notation
    • Big O Cheat Sheet
    • Generating Diagrams and Flowcharts with Mermaid
    • Creating Data Structure Diagrams with Mermaid
    • Mermaid Cheat Sheet
    • Vagrant - Draft
    • Popular Tools - draft
    • Migrate from Bootstrap 3 to 4 - Draft
    • Custom Domain for My Personal Website - Draft
  • Extra
  • Advanced Search Beta
  • GitHub
3 7

Article Index Algorithm, Prgoramming, Architecture, Cloud

Algorithm
    Data Structure 27 Algorithm 21 Algorithm Overview 8 Practice Problem 8
Programming
    Dev Environment 13 Java Core 21 Java 8 10 Java Concurrency 17 Java Advanced 15 Java App 20 Javascript 6 Design Pattern 24
Architecture
    Theory and Principle 17 Computer Network 2 Softwares 53 Database and Cache 3 Message Queue 1 Docker 14 DevOps 6 Security 4
Cloud
    Cloud Knowledge 2 Amazon AWS 31 Google GCP 7
Frontend
    Angular Tutorial 16 Angular App 13 React Tutorial 3 React App 21 Mobile 11
Backend
    RESTful API 11 Node.js 14 Express.js 12
Personal Website
    Jekyll 24 Wordpress 1
Project
    Online Judge 15
Others
    Synology 6 ASP.NET 4 Uncategorized 24
Algorithm
    Data Structure 27 Algorithm 21 Algorithm Overview 8 Practice Problem 8
Programming
    Dev Environment 13 Java Core 21 Java 8 10 Java Concurrency 17 Java Advanced 15 Java App 20 Javascript 6 Design Pattern 24
Architecture
    Theory and Principle 17 Computer Network 2 Softwares 53 Database and Cache 3 Message Queue 1 Docker 14 DevOps 6 Security 4
Cloud
    Cloud Knowledge 2 Amazon AWS 31 Google GCP 7
Frontend
    Angular Tutorial 16 Angular App 13 React Tutorial 3 React App 21 Mobile 11
Backend
    RESTful API 11 Node.js 14 Express.js 12
Personal Website
    Jekyll 24 Wordpress 1
Project
    Online Judge 15
Others
    Synology 6 ASP.NET 4 Uncategorized 24
© 2021 jojozhuang.github.io, All rights reserved.