├── .gitignore
├── .vscode
└── settings.json
├── FFF.md
├── LICENSE
├── PM
├── readme.md
└── 提效.md
├── README.md
├── algorithm
├── binary-tree.md
├── bloom-filter.md
├── data-structure.md
├── divide_and_conquer.md
├── dynamic-programming.md
├── hash.md
├── heap.md
├── images
│ └── recursion-tree.png
├── linked-list.md
├── log.md
├── queue.md
├── readme.md
├── recursion.md
├── red-black-tree.md
├── stack.md
├── string_mtach.md
└── 算法图解
│ ├── chapter-03.md
│ └── readme.md
├── architecture-design
├── draft.md
├── images
│ └── Architecture-design-01.drawio.svg
├── item-design.md
├── readme-summary.md
└── readme.md
├── arthas
└── readme.md
├── blog
└── readme.md
├── c_plus_plus
├── c_plus_plus_point_and_array.md
├── imgaes
│ └── c_p_p_pointer_arry.png
└── readme.md
├── clang
├── c_address_test.md
└── readme.md
├── cloud-native
└── readme.md
├── code-review.md
├── css
├── CSS权威指南
│ ├── chap-001.md
│ ├── chap-002.md
│ ├── chap-003.md
│ ├── chap-004.md
│ ├── chap-005.md
│ ├── chap-006.md
│ ├── chap-007.md
│ ├── chap-008.md
│ ├── chap-009.md
│ ├── images
│ │ ├── box-mode.png
│ │ ├── css-child-el.png
│ │ ├── display-2.png
│ │ ├── display.png
│ │ ├── element-box.png
│ │ ├── rate-cal.png
│ │ └── white-space.png
│ └── readme.md
└── readme.md
├── day-day-year-year
├── 2018.md
├── 2019.md
├── 2020.md
├── 2021.md
├── 2022.md
└── 2023.md
├── ddd
├── readme.md
└── 领域驱动设计
│ ├── ddd-01.md
│ ├── ddd-02.md
│ ├── ddd-03.md
│ ├── ddd-04.md
│ ├── ddd-05.md
│ ├── ddd-06.md
│ ├── ddd-07.md
│ ├── ddd-08.md
│ ├── ddd-09.md
│ ├── ddd-10.md
│ ├── ddd-core.md
│ ├── images
│ ├── ddd-05-01.png
│ ├── ddd-05-02.png
│ └── ddd-06-01.png
│ └── readme.md
├── design-patterns
├── abstract-factory-pattern.md
├── builder-pattern.md
├── chain-of-responsibility-pattern.md
├── composite-pattern.md
├── decorator-pattern.md
├── factory-method-pattern.md
├── gang-of-four-patterns.md
├── images
│ └── design-pattern.png
├── multiton-pattern.md
├── observer-pattern.md
├── reactor-pattern.md
├── readme.md
├── singleton-pattern.md
├── state-pattern.md
├── strategy-pattern.md
└── template-method-pattern.md
├── designing-data-intensive-appliactins
├── ddia-01.md
├── ddia-02.md
├── ddia-03.md
├── ddia-04.md
├── ddia-05.md
├── ddia-06.md
├── ddia-07.md
├── ddia-08.md
├── ddia-09.md
└── readme.md
├── docker
├── base
│ ├── namespace.md
│ └── readme.md
├── demo
│ ├── docker-http-server.md
│ ├── docker-mysql.md
│ ├── nginx.md
│ └── redis.md
├── docker-cgroup.md
├── docker-changeset.md
├── docker-chroot.md
├── docker-cmd.md
├── docker-compose.md
├── docker-dockerfile.md
├── docker-images.md
├── docker-install.md
├── docker-jenkins.md
├── docker-log.md
├── docker-moby.md
├── docker-namespace.md
├── docker-network.md
├── docker-stack.md
├── docker-swarm.md
├── docker-systemd.md
├── docker-volume.md
├── docker-volumes.md
├── rancher.md
└── readme.md
├── draw
├── draw-1F2130.png
├── draw-25B88F.png
├── draw-47BBE7.png
├── draw-F5BD41.png
├── draw.md
└── ece6e2.drawio.svg
├── dubbo
├── dobbo-stream.md
├── draw.io
│ └── router-tag.xml
├── dubbo-annotation.md
├── dubbo-async.md
├── dubbo-channel-buffer.md
├── dubbo-channel-handler.md
├── dubbo-cluster.md
├── dubbo-codec2.md
├── dubbo-dispatcher.md
├── dubbo-dynamic-configuration.md
├── dubbo-exchanger.md
├── dubbo-exporter.md
├── dubbo-extension-loader.md
├── dubbo-filter.md
├── dubbo-generic.md
├── dubbo-get-start.md
├── dubbo-hashed-wheel-timer.md
├── dubbo-init.md
├── dubbo-input-output-stream.md
├── dubbo-invocation.md
├── dubbo-invoker.md
├── dubbo-load-balance.md
├── dubbo-moudes.md
├── dubbo-protocol-dubbo-protocol.md
├── dubbo-protocol-registry-protocol.md
├── dubbo-protocol.md
├── dubbo-proxy.md
├── dubbo-registry-zookeeper.md
├── dubbo-registry.md
├── dubbo-reset.md
├── dubbo-router.md
├── dubbo-rpc-context.md
├── dubbo-rpc-invocation.md
├── dubbo-rpc.md
├── dubbo-serialization.md
├── dubbo-spi.md
├── dubbo-spring.md
├── dubbo-thread-pool.md
├── dubbo-transporter.md
├── dubbo-triple.md
├── dubbo-url.md
├── dubbo.3.0.md
├── images
│ ├── TCP-IP-17-2.png
│ ├── TCP-IP-17-2.svg
│ ├── TCP-IP-3-1.png
│ ├── TCP-IP-3-1.svg
│ ├── TCP-IP-dubbo.drawio.svg
│ ├── TCP-IP-dubbo.png
│ ├── dubbo-AllChannelHandler.png
│ ├── dubbo-AppResponse.png
│ ├── dubbo-AsyncRpcResult.png
│ ├── dubbo-ChannelBuffer.png
│ ├── dubbo-DecodeHandler.png
│ ├── dubbo-DecodeableRpcInvocation.png
│ ├── dubbo-DecodeableRpcResult.png
│ ├── dubbo-DubboCodec.png
│ ├── dubbo-ExchangeHandler.png
│ ├── dubbo-HeaderExchangeChannel.png
│ ├── dubbo-HeaderExchangeClient.png
│ ├── dubbo-HeaderExchangeServer.png
│ ├── dubbo-Invoker.png
│ ├── dubbo-JavassistProxyFactory.png
│ ├── dubbo-JdkProxyFactory.png
│ ├── dubbo-NettyClient.png
│ ├── dubbo-NettyServer.png
│ ├── dubbo-ReferenceBean.png
│ ├── dubbo-RouterFactory.png
│ ├── dubbo-ServiceBean.png
│ ├── dubbo-TelnetHandler.png
│ ├── dubbo-asyn.png
│ ├── dubbo-channel-handler-all.png
│ ├── dubbo-cluster.png
│ ├── dubbo-codec2-protocol.png
│ ├── dubbo-codec2.png
│ ├── dubbo-config-center-useage.png
│ ├── dubbo-customer-invoker.png
│ ├── dubbo-customer-registry.png
│ ├── dubbo-framework.jpg
│ ├── dubbo-invoker-stack.png
│ ├── dubbo-moudes.png
│ ├── dubbo-overrideSubscribeUrl-vs-providerUrl.png
│ ├── dubbo-protocol-export.png
│ ├── dubbo-protocol-registry-protocol.png
│ ├── dubbo-protocol.drawio.svg
│ ├── dubbo-registry-multicast.png
│ ├── dubbo-registry-zookeeper.png
│ ├── dubbo-router-tag.png
│ ├── dubbo-variable-part.drawio.svg
│ ├── input-stream.png
│ ├── invoke-arch.jpeg
│ └── output-stream.png
└── readme.md
├── es
├── ElasticSearch-权威指南-中文版
│ ├── es-01.md
│ ├── es-02.md
│ ├── es-03.md
│ ├── es-04.md
│ ├── es-05.md
│ ├── es-06.md
│ ├── es-07.md
│ ├── es-08.md
│ ├── es-09.md
│ ├── es-10.md
│ ├── es-11.md
│ ├── es-12.md
│ ├── es-13.md
│ ├── es-14.md
│ ├── es-15.md
│ ├── images
│ │ ├── es-per-segment-search.drawio.svg
│ │ └── readme.md
│ └── readme.md
├── es-agg.md
├── es-api.md
├── es-cerebro.md
├── es-core.md
├── es-data-version.md
├── es-index.md
├── es-inverted-index.md
├── es-query.md
├── es-script.md
├── es-sort.md
├── images
│ ├── es-token.drawio.svg
│ └── es-uri-search.md
├── readme.md
└── sort.json
├── etcd
└── etcd-install.md
├── golang
├── go-array.md
├── go-func.md
├── go-goroutine.md
├── go-interface.md
├── go-method.md
├── go-mod.md
├── go-modules.md
├── go-proxy.md
├── go-source.md
├── go-struct.md
├── go-vendor.md
├── head-first-go
│ ├── head-first-go-01-syntax-basics.md
│ ├── head-first-go-02-conditionals-and-loops.md
│ ├── head-first-go-03-functions.md
│ ├── head-first-go-04-packages.md
│ ├── head-first-go-05-arrays.md
│ ├── head-first-go-06-slices.md
│ ├── head-first-go-07-maps.md
│ ├── head-first-go-08-structs.md
│ ├── head-first-go-09-defined-types.md
│ ├── head-first-go-10-encapsulation-and-embedding.md
│ ├── head-first-go-11-interfaces.md
│ └── readme.md
├── images
│ └── 8srJD8LWg.png
├── readme.md
└── the-go-programming-language
│ ├── go-pl-01.md
│ ├── go-pl-02.md
│ ├── go-pl-03.md
│ ├── go-pl-04.md
│ ├── go-pl-05.md
│ ├── go-pl-06.md
│ ├── go-pl-07.md
│ └── readme.md
├── hardware
├── PCB
│ └── readme.md
├── readme.md
├── 全彩图解电子工程师入门手册
│ ├── images
│ │ └── readme.md
│ └── readme.md
├── 新概念模拟电路-1-晶体管
│ ├── chapter-00.md
│ ├── chapter-01-section-01.md
│ ├── chapter-01-section-02.md
│ ├── chapter-01-section-03.md
│ ├── chapter-01.md
│ ├── images
│ │ ├── section-1-7.png
│ │ ├── 新概念模拟电路-1-section-1-5.drawio.svg
│ │ ├── 新概念模拟电路-1-section-1-6.drawio.svg
│ │ └── 新概念模拟电路-1-section-1-7.drawio.svg
│ └── readme.md
├── 模拟电子技术基础-第四版
│ ├── chatper-00.md
│ ├── chatper-01.md
│ ├── chatper-02.md
│ ├── chatper-03.md
│ ├── chatper-04.md
│ ├── images
│ │ ├── 0-2-1.png
│ │ ├── 2.2.1.drawio.svg
│ │ ├── analog-digital-signal.png
│ │ └── 载流子.png
│ ├── readme.md
│ └── todo.md
└── 电工电子技术基础知识
│ └── readme.md
├── heiheihei
└── readme.md
├── idea
├── idea.md
├── images
│ ├── git-commit.png
│ ├── git-log.gif
│ ├── git-log.png
│ ├── git-merge.gif
│ ├── hot-reload-main.gif
│ ├── idea-tool-bar.png
│ ├── live-template-config.png
│ ├── main.gif
│ ├── tomcat-hot-reload-demo.gif
│ └── tomcat-hot-reload.gif
└── readme.md
├── istio
└── readme.md
├── java
├── agent.md
├── aqs.md
├── assert.md
├── atomic.md
├── base-type.md
├── blocking-queue.md
├── cas.md
├── charset.md
├── class.md
├── classloader.md
├── clh.md
├── collection.md
├── complement.md
├── completable-future.md
├── concurrency.md
├── concurrent-hash-map.md
├── concurrent-modification-exception.md
├── condition.md
├── copy-on-write.md
├── cors.md
├── count-down-latch.md
├── cyclic-barrier.md
├── deque.md
├── draw.io
│ ├── ThreadPoolExecutor.xml
│ ├── aqs.drawio
│ ├── linked-bloking-queue.xml
│ ├── list.xml
│ └── writer-reader.xml
├── druid
│ ├── druid.xml
│ └── readme.md
├── exception.md
├── executor.md
├── fork-join-pool.md
├── future.md
├── hashmap-get-put.md
├── hashmap-init-and-resize.md
├── hashmap-treebin.md
├── hashmap.md
├── images
│ ├── ArrayBlockingQueue.png
│ ├── ArrayBlockingQueue02.png
│ ├── Channel.png
│ ├── CopyOnWriteArrayList.png
│ ├── DelayedWorkQueue.png
│ ├── FutureTask.png
│ ├── LinkedBlockingQueue.png
│ ├── LinkedHashMap.png
│ ├── NioBuffer.png
│ ├── ScheduledFutureTask.png
│ ├── ScheduledThreadPoolExecutor.png
│ ├── ServerSocketChannel.png
│ ├── SocketChannel.png
│ ├── Sync.png
│ ├── SynchronousQueue.png
│ ├── ThreadPoolExecutor.png
│ ├── asq-wait-status-2.png
│ ├── asq-wait-status.png
│ ├── atomic.png
│ ├── class-loader.png
│ ├── concurrent-hash-map-node.png
│ ├── deque.png
│ ├── executor.png
│ ├── future.png
│ ├── hash-demo.png
│ ├── hashmap-bit-array.png
│ ├── hashmap-element-move.png
│ ├── hashmap-new-array.png
│ ├── hashmap-node-to-tree.png
│ ├── hashmap-tree-mock.png
│ ├── hashmap-tree-node.png
│ ├── hashmap-tree-rotate-left.png
│ ├── hashmap-tree-rotate-right.png
│ ├── hashmap-tree-x-node.png
│ ├── hashmap-tree-x.png
│ ├── hashmap-tree.png
│ ├── int-to-byte.png
│ ├── io-stream.png
│ ├── left-rotate.gif
│ ├── linked-blocking-queue-put.png
│ ├── list.png
│ ├── map.png
│ ├── queue.png
│ ├── reader.png
│ ├── right-rotate.gif
│ ├── set.png
│ ├── thread-pool-ctl.png
│ ├── threads-state.gif
│ └── writer.png
├── instrumentation
│ └── instrumentation.md
├── int-to-byte-and-byte-to-int.md
├── invocation-handler.md
├── io.md
├── java-blog.md
├── jdk-source-code.md
├── list.md
├── lock-support.md
├── lock.md
├── map.md
├── monitor.md
├── nio-byte-buffer.md
├── nio-channel.md
├── nio-mapped-byte-buffer.md
├── nio-selectable-channel.md
├── nio-selection-key.md
├── nio-selector-socket-demo.md
├── nio-socket.md
├── nio.md
├── nio
│ ├── nio.chapter-01.md
│ ├── nio.chapter-06.md
│ ├── nio.chapter-07.md
│ ├── nio.chapter-13.md
│ ├── nio.chapter-14.md
│ └── readme.md
├── queue.md
├── readme.md
├── reentrant-lock.md
├── reentrant-read-write-lock.md
├── reflect.md
├── scheduled-thread-pool-executor.md
├── serializable.md
├── servlet.md
├── set.md
├── socket-option.md
├── synchronized.md
├── thread-local.md
├── thread-pool-executor-constructor.md
├── thread-pool-executor.md
├── thread.md
└── volatile.md
├── java8
├── collector.md
├── collectors.md
├── completable-future.md
├── default-method.md
├── file.md
├── function.md
├── future.md
├── graceful-java8.md
├── images
│ ├── CompletableFuture.png
│ ├── java8-complate-future-stream.png
│ └── stream.png
├── java8-in-action.md
├── lambda.md
├── localdatetime.md
├── optional.md
├── pipeline.md
├── spliterator.md
├── stream-impl.md
├── stream-map.md
└── stream.md
├── jvm
├── HotSopt实战
│ ├── chapter-01.md
│ ├── chapter-02.md
│ ├── chapter-03.md
│ ├── chapter-04.md
│ ├── chapter-05.md
│ ├── chapter-06.md
│ ├── chapter-07.md
│ ├── chapter-08.md
│ ├── chapter-09.md
│ ├── images
│ │ ├── 2.7-main函数执行流程.svg
│ │ ├── 4-1-内存区域划分.drawio.svg
│ │ ├── JavaMain程序流程.drawio.svg
│ │ ├── hossopt实战-3-3.drawio.svg
│ │ ├── hossopt实战-3-4.drawio.svg
│ │ ├── jvm-g1-heap-Layout.drawio.svg
│ │ └── jvm-gc-log-2023-01-11.drawio.svg
│ └── readme.md
├── Java并发编程的艺术
│ ├── 01.md
│ ├── 02.md
│ ├── 03.md
│ └── readme.md
├── gc-log.md
├── images
│ ├── chapter-03-6.drawio.svg
│ ├── jvm-g1-2023-01-09-colored-pointer.drawio.svg
│ ├── jvm-g1-2023-01-09-mark-relocate-remap.drawio.svg
│ ├── jvm-g1-heap-Layout.drawio.svg
│ ├── jvm-gc-log-2023-01-11.drawio.svg
│ ├── jvm-gc-parallel-heap-layout.drawio.svg
│ ├── jvm-heap.drawio.svg
│ ├── jvm_op_code-load-store-ldc.drawio.svg
│ ├── jvm_op_code-load-store.drawio.svg
│ ├── jvm_op_code.png
│ ├── load-store.png
│ └── memory-analyze
│ │ ├── dominator-tree-2.png
│ │ ├── dominator-tree.png
│ │ ├── leak-suspect.png
│ │ ├── report.png
│ │ ├── thread-stack.png
│ │ └── visualvm-hprof.png
├── jvm-asm.md
├── jvm-blog.md
├── jvm-config.md
├── jvm-gc-cms.md
├── jvm-gc-g1-config.md
├── jvm-gc-g1.md
├── jvm-gc-parallel-scavenge.md
├── jvm-gc-utils.md
├── jvm-gc-zgc.md
├── jvm-gc.md
├── jvm-iinr.md
├── jvm-itable-vtable.md
├── jvm-javassist.md
├── jvm-jmm.md
├── jvm-jni.md
├── jvm-klass.md
├── jvm-lock.md
├── jvm-mermory.md
├── jvm-native-memory.md
├── jvm-opcode.md
├── jvm-safe-point.md
├── jvm-switch-case.md
├── jvm-synchronized.md
├── jvm-thread-create.md
├── jvm-thread.md
├── jvm-tlab.md
├── jvm.md
├── readme.md
├── 深入JVM虚拟机-JVM-G1算法与实现
│ ├── chapter-01.md
│ ├── chapter-02.md
│ ├── chapter-03.md
│ ├── chapter-04.md
│ ├── chapter-05.md
│ ├── chapter-06.md
│ ├── chapter-07.md
│ ├── chapter-08.md
│ ├── chapter-09.md
│ ├── chapter-10.md
│ ├── chapter-11.md
│ ├── chapter-12.md
│ ├── chapter-13.md
│ ├── chapter-14.md
│ ├── chapter-15.md
│ ├── chapter-16.md
│ ├── chapter-17.md
│ ├── chapter-18.md
│ ├── chapter-19.md
│ ├── chapter-20.md
│ ├── images
│ │ ├── GangWorker.drawio.svg
│ │ ├── card-table.drawio.svg
│ │ ├── hotspot-thread.drawio.svg
│ │ ├── mset-card-table.drawio.svg
│ │ └── mutator-and-gc.drawio.svg
│ └── readme.md
├── 深入剖析Java虚拟机源码剖析与实例详解-基础卷-马智
│ ├── chapter-01.md
│ ├── chapter-02.md
│ ├── chapter-03.md
│ ├── chapter-04.md
│ ├── chapter-05.md
│ ├── chapter-06.md
│ ├── chapter-07.md
│ ├── chapter-08.md
│ ├── chapter-09.md
│ ├── chapter-10.md
│ ├── chapter-11.md
│ ├── chapter-12.md
│ ├── chapter-13.md
│ ├── images
│ │ ├── CollectedHeap.drawio.svg
│ │ ├── CollectorPolicy.drawio.svg
│ │ ├── ConstantMethod.drawio.svg
│ │ ├── ConstantPoolCacheEntry-method.drawio.svg
│ │ ├── Generation.drawio.svg
│ │ ├── HandleArea.drawio.svg
│ │ ├── Method.drawio.svg
│ │ ├── Serial-layout.drawio.svg
│ │ ├── chapter-03-6.drawio.svg
│ │ ├── handle-reference.drawio.svg
│ │ ├── handle.drawio.svg
│ │ ├── java-heap.drawio.svg
│ │ ├── jvm-class-load.drawio.svg
│ │ ├── jvm-class-loader.drawio.svg
│ │ ├── kclass.drawio.svg
│ │ ├── klass-vtable.drawio.svg
│ │ ├── klcass-itable.drawio.svg
│ │ ├── memory-layout.drawio.svg
│ │ ├── memory-offset-table.drawio.svg
│ │ ├── oopDesc-layout.drawio.svg
│ │ ├── oopDesc.drawio.svg
│ │ ├── saved-mark.drawio.svg
│ │ └── vm-thread.drawio.svg
│ └── readme.md
├── 深入理解Java虚拟机
│ ├── chapter-02.md
│ ├── chapter-03.md
│ ├── chapter-04.md
│ ├── chapter-05.md
│ ├── chapter-06.md
│ ├── chapter-07.md
│ ├── chapter-08.md
│ ├── chapter-09.md
│ ├── chapter-10.md
│ ├── chapter-11.md
│ ├── chapter-12.md
│ ├── chapter-13.md
│ ├── images
│ │ ├── chapter-03-3.3.5.drawio.svg
│ │ ├── chapter-03-6.drawio.svg
│ │ └── jvm-class-loader.drawio.svg
│ └── readme.md
└── 深入理解jvm字节码
│ ├── 01.md
│ ├── 02.md
│ ├── 03.md
│ └── readme.md
├── kafka
├── readme.md
└── 深入理解kafka-核心设计与实践原理
│ ├── chapter-01.md
│ ├── chapter-02.md
│ ├── chapter-03.md
│ ├── chapter-04.md
│ ├── chapter-05.md
│ ├── chapter-06.md
│ ├── chapter-07.md
│ ├── chapter-08.md
│ ├── images
│ ├── consumer-offset.png
│ ├── kafka-consumer-group.png
│ └── kafka-producer.png
│ └── readme.md
├── kubernetes
├── demo
│ └── demo.md
├── images
│ ├── k8s-bin.png
│ ├── k8s-controller.png
│ ├── k8s-master.png
│ ├── k8s-node.png
│ ├── k8s-tech.png
│ ├── k8s.png
│ └── minikube.png
├── kubenetes-dashboard.md
├── kubernetes-components.md
├── kubernetes-configmap.md
├── kubernetes-controller.md
├── kubernetes-crd.md
├── kubernetes-cri.md
├── kubernetes-daemon-set.md
├── kubernetes-deployment.md
├── kubernetes-flannel.md
├── kubernetes-helm.md
├── kubernetes-infromer.md
├── kubernetes-install-bin.md
├── kubernetes-install.md
├── kubernetes-job.md
├── kubernetes-lables.md
├── kubernetes-pod.md
├── kubernetes-probe-spec.md
├── kubernetes-pv-pvc.md
├── kubernetes-replicaset.md
├── kubernetes-runtime-class.md
├── kubernetes-schedule.md
├── kubernetes-service.md
├── kubernetes-statefuleset.md
├── kubernetes-ui.md
├── kubernetes-volume.md
├── kubernetes.md
├── kuboard.md
├── minikube.md
└── readme.md
├── linux
├── Linux设备驱动开发详解
│ ├── 001-linux-env-build.md
│ ├── 002-linux-base.md
│ ├── 003-linux-kconfig.md
│ ├── 004-linux-module.md
│ ├── 005-linux-udev.md
│ ├── 006-linux-cdev.md
│ ├── 007-linux-concurrency.md
│ ├── 008-linux-select-poll.md
│ ├── 009-linux-aio.md
│ ├── 010-linux-irq.md
│ ├── 011-linux-io.md
│ ├── 012-linux-device-drive-arch.md
│ ├── 013-linux-block-device.md
│ ├── 014-linux-net-device.md
│ ├── 015-linux-i2c.md
│ ├── 016-linux-usb.md
│ ├── 017-linux-i2c-spi-usb.md
│ ├── 018-linux-arm-dts.md
│ ├── 019-linux-power.md
│ ├── 020-linux-soc.md
│ ├── 021-linux-debug.md
│ ├── images
│ │ ├── 006-linux-file_operations.png
│ │ ├── 008-linux-select-pool.png
│ │ ├── 008-linux-wait-queue-wait-queue-head-t.png
│ │ ├── 009-linux-async-sig.png
│ │ ├── 009-linux-eagain-sync-io.png
│ │ ├── 010-linux-top-half.png
│ │ ├── 011-linux-32-mem.png
│ │ ├── 011-linux-dma-cache-2.png
│ │ ├── 011-linux-dma-cache.png
│ │ ├── 011-linux-io-port-flow.png
│ │ ├── 011-linux-io-port.png
│ │ ├── 011-linux-io.png
│ │ ├── 011-linux-mem.png
│ │ ├── 011-linux-virtual-mem.png
│ │ ├── 011-mmu-arm.png
│ │ ├── 011-mmu-table.png
│ │ ├── 012-linux-deivce-layer.png
│ │ ├── 012-linux-device-1.png
│ │ ├── 012-linux-framebuffer.png
│ │ ├── 012-linux-tty.png
│ │ ├── 013-linux-bio-vec.png
│ │ ├── 013-linux-io-schedule.png
│ │ ├── 014-linux-net-device-layer.png
│ │ ├── 014-linux-net-sk-buff.png
│ │ ├── 015-linux-ic2-arch.png
│ │ ├── 016-linux-sub-point.png
│ │ ├── 016-linux-usb-arch.png
│ │ ├── 017-linux-i2c-usb-spi.png
│ │ ├── 018-linux-dts-arch.png
│ │ └── 019-linux-power-arch.png
│ └── readme.md
├── linux-fork.md
├── linux-memeory.md
└── readme.md
├── mac
├── iterm.md
├── readme.md
└── telnet.md
├── mathematics
├── readme.md
└── 数学之美
│ ├── chapter-01.md
│ ├── chapter-02.md
│ ├── chapter-03.md
│ ├── chapter-04.md
│ ├── chapter-05.md
│ ├── chapter-12.md
│ ├── chapter-13.md
│ ├── chapter-14.md
│ ├── chapter-15.md
│ └── readme.md
├── micro-services
├── distributed-tx.md
├── readme.md
└── service-discovery.md
├── mybatis
├── images
│ ├── DataSourceTransactionManager.png
│ ├── SqlSessionFactoryBean.png
│ ├── mybatis-exe.draw.png
│ ├── mybatis-mapper-factory-bean.png
│ ├── mybatis-mapper-scanner-configurer.png
│ ├── mybatis-ms.png
│ └── mybatis.png
├── mybatis-bound-sql.md
├── mybatis-cache.md
├── mybatis-configuration.md
├── mybatis-executor.md
├── mybatis-interceptor.md
├── mybatis-key-generator.md
├── mybatis-mapped-statement.md
├── mybatis-mapper-factory-bean.md
├── mybatis-mapper-method.md
├── mybatis-mapper-proxy.md
├── mybatis-mapper-scanner-configurer.md
├── mybatis-plugin.md
├── mybatis-pooled-data-source.md
├── mybatis-result-set-handler.md
├── mybatis-spring.md
├── mybatis-sql-session-factory-bean.md
├── mybatis-sql-session-template.md
├── mybatis-sql-session.md
├── mybatis-statement-handler.md
├── mybatis-tx.md
├── mybatis-type-handler.md
├── mybatis-xml-statement-builder.md
├── mybstis-xml-config-builder.md
└── readme.md
├── mysql
├── MySQL技术内幕(InnoDB存储引擎)第2版
│ ├── chapter-01.md
│ ├── chapter-02.md
│ ├── chapter-03.md
│ ├── chapter-04.md
│ ├── chapter-05.md
│ ├── chapter-06.md
│ ├── chapter-07.md
│ ├── chapter-08.md
│ ├── chapter-09.md
│ ├── chapter-10.md
│ ├── images
│ │ ├── mysql-innodb-chapter-02-05.drawio.svg
│ │ ├── mysql-innodb-chapter-03-01.drawio.svg
│ │ ├── mysql-innodb-chapter-03-02.drawio.svg
│ │ ├── mysql-innodb-chapter-03-03.drawio.svg
│ │ ├── mysql-innodb-chapter-04-01.drawio.svg
│ │ ├── mysql-innodb-chapter-04-02.drawio.svg
│ │ ├── mysql-innodb-chapter-04-03.drawio.svg
│ │ ├── mysql-innodb-chapter-04-04.drawio.svg
│ │ ├── mysql-innodb-chapter-04-05.drawio.svg
│ │ ├── mysql-innodb-chapter-05-06.drawio.svg
│ │ ├── mysql-innodb-chapter-06-4.drawio.svg
│ │ ├── mysql-innodb-chapter-07-21.drawio.svg
│ │ ├── mysql-innodb-chapter-07-23.drawio.svg
│ │ └── mysql-innodb-chapter-07-24.drawio.svg
│ └── readme.md
├── MySQL是怎么运行的
│ ├── images
│ │ ├── MySQL-page.drawio.svg
│ │ ├── MySQL-事务-01.drawio.svg
│ │ ├── MySQL-事务-02.drawio.svg
│ │ ├── innodb-architecture.png
│ │ └── mysql-innodb-chapter-04-01.drawio.svg
│ ├── mysql-01.md
│ ├── mysql-02.md
│ ├── mysql-03.md
│ ├── mysql-04.md
│ ├── mysql-05.md
│ ├── mysql-06.md
│ ├── mysql-07.md
│ ├── mysql-08.md
│ ├── mysql-09.md
│ ├── mysql-10.md
│ ├── mysql-11.md
│ ├── mysql-12.md
│ ├── mysql-13.md
│ ├── mysql-14.md
│ ├── mysql-15.md
│ ├── mysql-16.md
│ ├── mysql-17.md
│ ├── mysql-18.md
│ ├── mysql-19.md
│ ├── mysql-20.md
│ ├── mysql-21.md
│ ├── mysql-22.md
│ ├── mysql-23.md
│ ├── mysql-24.md
│ ├── mysql-25.md
│ ├── mysql-26.md
│ └── readme.md
├── images
│ ├── MySQL-6-3.drawio.svg
│ ├── innodb-architecture.png
│ ├── innodb-buffer-pool-list.png
│ ├── innodb-data-struct.png
│ └── mysql-innodb-chapter-06-4.drawio.svg
├── mysql-Innodb-row-formats.md
├── mysql-blog.md
├── mysql-cmd.md
├── mysql-data-type.md
├── mysql-group-by.md
├── mysql-index.md
├── mysql-innodb-locking.md
├── mysql-innodb.md
├── mysql-join.md
├── mysql-limit.md
├── mysql-lock-dead.md
├── mysql-lock-summary.md
├── mysql-lock.md
├── mysql-mmvc.md
├── mysql-page.md
├── mysql-profile.md
├── mysql-redo-undo.md
├── mysql-temporary-table.md
├── mysql-tokudb.md
├── mysql-transaction.md
├── mysql-xa.md
└── readme.md
├── nacos
├── images
│ ├── nacos-arch.png
│ ├── nacso-Nacos⼀致性协议.drawio.svg
│ ├── nacso-服务的分级模型.drawio.svg
│ └── nacso-服务的逻辑隔离模型.drawio.svg
├── nacos-aliyun.md
├── nacos-config-service.md
├── nacos-config.md
├── nacos-distro.md
├── nacos-nacos-factory.md
├── nacos-naming-factory.md
├── nacos-naming-service.md
├── nacos-spring.md
├── nacos.md
└── readme.md
├── netty
├── draw.io
│ └── netty-in-action.xml
├── images
│ ├── Bootstrap.png
│ ├── ChannelHandlerContext.png
│ ├── ChannelHandlers.png
│ ├── DefaultChannelPromise.png
│ ├── EventExecutorGroup.png
│ ├── EventLoop.png
│ ├── FullHttpRequest.png
│ ├── FullHttpResponse.png
│ ├── Interface-EventLoop.png
│ ├── LengthFieldBasedFrameDecoder.png
│ ├── MarshallingDecoder.png
│ ├── MarshallingEncoder.png
│ ├── NioEventLoop.png
│ ├── NioEventLoopGroup.png
│ ├── NioServerSocketChannel.png
│ ├── NioSocketChannel.png
│ ├── ObjectDecoder.png
│ ├── ObjectEncoder.png
│ ├── PooledByteBufAllocator.png
│ ├── ProtobufDecoder.png
│ ├── ProtobufEncoder.png
│ ├── ServerBootstrap.png
│ ├── SimpleChannelInboundHandler.png
│ ├── UnpooledByteBufAllocator.png
│ ├── channel-adapter.png
│ ├── channel-context.png
│ ├── channel-state.png
│ ├── components.png
│ ├── eventLoop-and-hannel.png
│ ├── java-nio-selector.png
│ ├── netty-4.1-module.svg
│ ├── netty-4.1-modules.png
│ ├── netty-DefaultChannelHandlerContext.png
│ ├── netty-in-action-channel-pipe-line.png
│ ├── netty-in-action-components-and-design.png
│ ├── netty-in-action.png
│ ├── netty-pipeline-channel.png
│ ├── poolarena-poolarena.svg
│ ├── unix-network-1-4-1.png
│ └── unix-network-1-4-1.svg
├── netty-base.md
├── netty-bootstrap.md
├── netty-byte-buf-allocator.md
├── netty-byte-buf.md
├── netty-byte-to-message-decoder.md
├── netty-channel-future.md
├── netty-channel-handler-context.md
├── netty-channel-handler.md
├── netty-channel-outbound-buffer.md
├── netty-channel-pipeline.md
├── netty-channel.md
├── netty-core.md
├── netty-event-executor-chooser.md
├── netty-event-loop.md
├── netty-fast-thread-local.md
├── netty-guid.md
├── netty-hash-wheel-timer.md
├── netty-inaction
│ ├── netty-in-action-chapter-01.md
│ ├── netty-in-action-chapter-02.md
│ ├── netty-in-action-chapter-03.md
│ ├── netty-in-action-chapter-04.md
│ ├── netty-in-action-chapter-05.md
│ ├── netty-in-action-chapter-06.md
│ ├── netty-in-action-chapter-07.md
│ ├── netty-in-action-chapter-08.md
│ ├── netty-in-action-chapter-09.md
│ ├── netty-in-action-chapter-10.md
│ ├── netty-in-action-chapter-11.md
│ ├── netty-in-action-chapter-12.md
│ ├── netty-in-action-chapter-13.md
│ ├── netty-in-action-chapter-14.md
│ ├── netty-in-action-summary.md
│ ├── netty-inaction.md
│ └── readme.md
├── netty-message-to-message-codec.md
├── netty-mpsc-queue.md
├── netty-pool-arena.md
├── netty-pool-chunk.md
├── netty-pool-thread-cache.md
├── netty-read-data.md
├── netty-recycler.md
├── netty-size-classes.md
├── netty-write-data.md
├── readme.md
└── socket-base.md
├── operating-system
├── 0xFF.md
├── Unix环境高级编程
│ ├── readmed.md
│ └── unix-chapter-12.md
├── assembly
│ ├── __asm__.md
│ ├── assembly_links.md
│ ├── c_asm_demo.md
│ ├── 汇编语言-基于X86处理器
│ │ └── readme.md
│ └── 汇编语言-第三版
│ │ ├── demo
│ │ ├── 1.asm
│ │ ├── 123X236.asm
│ │ ├── abc.asm
│ │ ├── jmp0.asm
│ │ ├── offest.asm
│ │ ├── p3.asm
│ │ ├── p4.asm
│ │ ├── ret.asm
│ │ ├── ss0.asm
│ │ └── t1.asm
│ │ └── readme.md
├── binary_bit_byte.md
├── bit.md
├── cpu.md
├── cpu_cache.md
├── demos
│ └── malloc_demo.c
├── fs.md
├── gc.md
├── images
│ ├── linux-memory-layout.drawio.svg
│ └── memory.drawio.svg
├── interrupt.md
├── mmap.md
├── page_memory.md
├── process-thread-coroutine.md
├── readme.md
├── register.md
├── stack.md
├── vm.md
├── volatile.md
├── 垃圾回收算法手册
│ ├── chapter-01.md
│ ├── chapter-02.md
│ ├── chapter-03.md
│ ├── chapter-04.md
│ ├── chapter-05.md
│ ├── chapter-07.md
│ ├── chapter-15.md
│ ├── drawio
│ │ └── 垃圾回收算法手册.drawio
│ ├── images
│ │ ├── chapter-02-1.drawio.svg
│ │ └── chapter-07-1.drawio.svg
│ └── readme.md
├── 深入理解Linux内核
│ ├── chapter-01.md
│ ├── chapter-02.md
│ ├── chapter-08.md
│ ├── chapter-09.md
│ ├── chapter-12.md
│ ├── images
│ │ ├── 2-1.drawio.svg
│ │ ├── 2-12.drawio.svg
│ │ ├── 2-13.drawio.svg
│ │ ├── 2-2.drawio.svg
│ │ ├── 2-7.drawio.svg
│ │ ├── 32-page.drawio.svg
│ │ ├── 深入理解Linux内核-12-2.drawio.svg
│ │ └── 第二章-内存寻址.svg
│ └── readme.md
└── 深入理解计算机系统-第三版
│ ├── chapter-01.md
│ ├── chapter-02.md
│ ├── chapter-03.md
│ ├── images
│ ├── CSAPP-2-32.svg
│ ├── CSAPP-2-33.svg
│ └── CSAPP-算数右移.drawio.svg
│ └── readme.md
├── other
├── css
│ └── readme.md
├── jms
│ └── jms-blog.md
├── js
│ ├── ==and===.md
│ ├── IIFEs.md
│ ├── apply.md
│ ├── arguments.md
│ ├── arrow-function.md
│ ├── ast.md
│ ├── async.md
│ ├── await.md
│ ├── babel
│ │ └── readme.md
│ ├── bind.md
│ ├── call.md
│ ├── class.md
│ ├── closure.md
│ ├── constructor.md
│ ├── event-loop.md
│ ├── export.md
│ ├── extends.md
│ ├── flow
│ │ ├── flow.md
│ │ ├── flowconfig.md
│ │ └── types.md
│ ├── function.md
│ ├── generator.md
│ ├── hoisting.md
│ ├── import.md
│ ├── introduction.md
│ ├── iterable.md
│ ├── map.md
│ ├── method.md
│ ├── new.md
│ ├── nodejs
│ │ ├── export.md
│ │ ├── import.md
│ │ ├── module.md
│ │ └── readme.md
│ ├── object.md
│ ├── promise.md
│ ├── prototype.md
│ ├── reactjs
│ │ ├── react-lifecycle.md
│ │ ├── react-redux.md
│ │ ├── react-state.md
│ │ └── readme.md
│ ├── readme.md
│ ├── static.md
│ ├── strict.md
│ ├── super.md
│ ├── this.md
│ ├── undefined.md
│ ├── vuejs
│ │ └── readme.md
│ ├── webpack.md
│ └── xmlhttprequest.md
├── nginx.md
├── readme.md
├── todo
│ ├── 2017-03-22-code-review.md
│ └── todo.md
├── typescript
│ ├── class.md
│ └── readme.md
├── utils
│ └── readme.md
└── zzz
│ └── readme.md
├── plan
└── 2023-08.md
├── read.md
├── redis
├── Redis核心
│ ├── images
│ │ ├── redis-collection.png
│ │ ├── redis-data-type.png
│ │ ├── redis-global-hash-table.drawio.svg
│ │ ├── redis-redis-object.drawio.svg
│ │ └── redis.drawio.svg
│ ├── readme.md
│ ├── redis-acid.md
│ ├── redis-atomic.md
│ ├── redis-cmd.md
│ ├── redis-collection.md
│ ├── redis-data-struct.md
│ ├── redis-fork.md
│ └── redis-thread.md
├── Redis的设计与实现
│ └── readme.md
├── demo
│ └── readme.md
├── jedis.md
├── readme.md
├── redis-blog.md
├── redis-cmd.md
├── redis-config.md
└── redis-io.md
├── rocketmq
├── images
│ ├── idea-quick-go-to-line.png
│ ├── mapped-file-queue-new.png
│ ├── rmq-basic-arc.png
│ ├── rocket-mq-customer-head-trac.png
│ ├── rocket-mq-customer-head.png
│ ├── rocket-mq-tx.png
│ ├── rocket-netty-async.png
│ ├── rocket-store-msg-seralize.drawio.svg
│ ├── rocket-store-msg-seralize.png
│ ├── rocket-store-msg.png
│ ├── rocket-store-store.drawio.svg
│ ├── rocket-store.png
│ ├── rocketmq-consumer-AllocateMessageQueueAveragely.png
│ ├── rocketmq-consumer-AllocateMessageQueueAveragely.svg
│ ├── rocketmq-consumer-consumer-simple.png
│ ├── rocketmq-consumer-consumer-simple.svg
│ ├── rocketmq-consumer-create-consumer.png
│ ├── rocketmq-consumer-create-consumer.svg
│ ├── rocketmq-consumer-create-topic.png
│ ├── rocketmq-consumer-msg-serialize.drawio.svg
│ ├── rocketmq-consumer-nameserver.png
│ ├── rocketmq-consumer-route-info.png
│ ├── rocketmq-consumer-send-msg.png
│ ├── rocketmq-consumer-start.png
│ ├── rocketmq-consumer-start.svg
│ ├── rocketmq-consumer.png
│ ├── rocketmq-consumer.svg
│ ├── rocketmq-consumerqueue.drawio.svg
│ ├── rocketmq-delete-tags.png
│ ├── rocketmq-message-id.drawio.svg
│ ├── rocketmq-messgae-flow.png
│ ├── rocketmq-mqadmin.png
│ ├── rocketmq-msg-serialize.png
│ ├── rocketmq-nameserver-info.png
│ ├── rocketmq-nameserver.drawio.svg
│ ├── rocketmq-ns.drawio.svg
│ ├── rocketmq-processer.png
│ ├── rocketmq-producer.png
│ ├── topic-config.png
│ └── tpoic-route-data.png
├── readme-todo.md
├── readme.md
├── rocketmq-FAQ-100.md
├── rocketmq-HA.md
├── rocketmq-admin.md
├── rocketmq-architecture.md
├── rocketmq-base.md
├── rocketmq-broker-cluster.md
├── rocketmq-broker-start.md
├── rocketmq-broker.md
├── rocketmq-commit-log.md
├── rocketmq-config.md
├── rocketmq-consume-queue.md
├── rocketmq-consumer-orderly.md
├── rocketmq-consumer-push-pull.md
├── rocketmq-consumer-send-msg-back.md
├── rocketmq-consumer.md
├── rocketmq-delay-message.md
├── rocketmq-filter.md
├── rocketmq-index.md
├── rocketmq-mapped-file.md
├── rocketmq-message-ext.md
├── rocketmq-message-id.md
├── rocketmq-message-queue.md
├── rocketmq-message-store.md
├── rocketmq-name-server.md
├── rocketmq-namespace.md
├── rocketmq-netty.md
├── rocketmq-process-queue.md
├── rocketmq-producer.md
├── rocketmq-rebalance.md
├── rocketmq-remoting-command.md
├── rocketmq-route-info.md
├── rocketmq-route.md
├── rocketmq-serialize.md
├── rocketmq-store.md
├── rocketmq-tags.md
├── rocketmq-topic.md
└── rocketmq-tx.md
├── seata
├── images
│ ├── seata-BranchStatus.png
│ ├── seata-GlobalStatus.png
│ ├── seata-commit-failed.drawio.svg
│ ├── seata-commit-failed.png
│ ├── seata-rollback-failed.drawio.svg
│ ├── seata-rollback-failed.png
│ ├── seata-seata.png
│ ├── seata-session-manager.png
│ ├── seata-tm-tm-tc.drawio.svg
│ ├── seata-tm-tm-tc.png
│ ├── seata-try-failed.drawio.svg
│ └── seata-try-failed.png
├── readme.md
├── seata-default-coordinator.md
├── seata-global-session.md
├── seata-global-transaction-scanner.md
├── seata-global-transaction.md
├── seata-lock.md
├── seata-resource-manager.md
├── seata-session-manager.md
├── seata-status.md
├── seata-tcc-and-ocketmq.md
├── seata-tcc-interceptor.md
├── seata-tcc-resource-manager.md
├── seata-tcc.md
├── seata-trans-status.md
├── seata-transaction-manager.md
├── seata-transactional-template.md
├── seatat-at.md
└── seatat-request.md
├── shell
└── readme.md
├── software-architecture
└── readme.md
├── spring-boot
├── readme.md
├── spring-boot-application.md
├── spring-boot-auto-configuration.md
├── spring-boot-enable-auto-configuration.md
├── spring-boot-logging.md
├── spring-boot-spring-application.md
└── spring-boot-starter.md
├── spring-cloud
├── readme.md
├── spring-cloud-bus.md
├── spring-cloud-config.md
├── spring-cloud-sleuth.md
└── zuul.md
├── spring
├── images
│ ├── DataAccessException.gif
│ ├── aop-proxy-call.png
│ ├── aop-proxy-plain-pojo-call.png
│ ├── container-magic.png
│ ├── kotlin-error.png
│ ├── mvc-context-hierarchy.png
│ ├── mvc-root-context.png
│ ├── mvc.png
│ ├── overview-full.png
│ ├── oxm-exceptions.png
│ ├── prototype.png
│ ├── singleton.png
│ ├── spring-ClassPathXmlApplicationContext.png
│ ├── spring-StandardEnvironment.png
│ ├── spring-bean-init.png
│ ├── spring-bean-load.png
│ ├── spring-jdbc-vs-you.png
│ ├── spring-servlet.png
│ ├── transaactional-settings.png
│ ├── tx-methond.png
│ ├── tx.png
│ ├── tx_prop_required.png
│ └── tx_prop_requires_new.png
├── readme.md
├── spring-FAQ.md
├── spring-annotation
│ ├── readme.md
│ ├── spring-alias-for.md
│ ├── spring-bean.md
│ ├── spring-component-scan.md
│ └── spring-configuration.md
├── spring-bean
│ ├── readme.md
│ ├── spring-abstract-bean-factory.md
│ ├── spring-autowire.md
│ ├── spring-autowired-annotation-bean-post-processor.md
│ ├── spring-bean-definition-registry-post-processor.md
│ ├── spring-bean-definition-registry.md
│ ├── spring-bean-definition.md
│ ├── spring-bean-factory-post-processor.md
│ ├── spring-bean-factory.md
│ ├── spring-bean-parse.md
│ ├── spring-bean-post-processor.md
│ ├── spring-factory-bean.md
│ ├── spring-generic-bean-definition.md
│ ├── spring-initializing-bean.md
│ └── spring-instantiation-aware-bean-post-processor.md
├── spring-context
│ ├── readme.md
│ ├── spring-annotation-config-application-context.md
│ ├── spring-annotation.md
│ ├── spring-application-context.md
│ ├── spring-class-path-bean-definition-scanner.md
│ ├── spring-class-path-xml-application-context.md
│ ├── spring-context.xml
│ ├── spring-generic-application-context.md
│ └── spring-web-application-context.md
├── spring-core
│ ├── readme.md
│ ├── spring-aop.md
│ ├── spring-factories-loader.md
│ ├── spring-ioc.md
│ └── spring-util
│ │ └── spring-util.md
├── spring-faq
│ ├── spring-faq-001.md
│ ├── spring-faq-002.md
│ └── spring-faq-003.md
├── spring-issues.md
├── spring-mvc
│ ├── readme.md
│ ├── spring-handler-exception.md
│ ├── spring-mvc-dispatcher-servlet.md
│ ├── spring-mvc-handier-interceptor-adapter.md
│ ├── spring-web-annotation.md
│ ├── spring-web-context-loader-listener.md
│ ├── spring-web-handler-adapter.md
│ ├── spring-web-handler-mapping.md
│ ├── spring-web-http-request-handler-servlet.md
│ ├── spring-web-request-condition.md
│ ├── spring-web-request-mapping-handler-adapter.md
│ ├── spring-web-request-mapping-handler-mapping.md
│ ├── spring-web-request-mapping.md
│ └── spring-web-web-mvc-configuration-support.md
├── spring-reference
│ ├── spring-reference-001.md
│ ├── spring-reference-007.md
│ ├── spring-reference-008.md
│ ├── spring-reference-011.md
│ ├── spring-reference-012.md
│ ├── spring-reference-013.md
│ ├── spring-reference-014.md
│ ├── spring-reference-015.md
│ ├── spring-reference-016.md
│ ├── spring-reference-017.md
│ ├── spring-reference-018.md
│ ├── spring-reference-019.md
│ ├── spring-reference-020.md
│ ├── spring-reference-021.md
│ ├── spring-reference-022.md
│ ├── spring-reference-023.md
│ ├── spring-reference-024.md
│ ├── spring-reference-025.md
│ ├── spring-reference-026.md
│ ├── spring-reference-027.md
│ ├── spring-reference-028.md
│ ├── spring-reference-030.md
│ ├── spring-reference-033.md
│ ├── spring-reference-034.md
│ ├── spring-reference-036.md
│ ├── spring-reference-042.md
│ └── spring-reference.md
└── spring-tx
│ └── spring-transaction.md
├── swagger
└── readme.md
├── tcp-ip
├── HTTP权威指南
│ ├── chap-001.md
│ ├── chap-002.md
│ ├── chap-003.md
│ ├── chap-004.md
│ ├── chap-005.md
│ ├── chap-006.md
│ ├── chap-007.md
│ ├── chap-008.md
│ ├── chap-009.md
│ ├── chap-010.md
│ ├── chap-011.md
│ ├── chap-012.md
│ ├── chap-013.md
│ ├── chap-014.md
│ ├── chap-015.md
│ ├── chap-016.md
│ ├── chap-017.md
│ ├── chap-018.md
│ ├── chap-019.md
│ ├── chap-020.md
│ ├── chap-021.md
│ ├── images
│ │ ├── http-ch-01-Http-Message.drawio.svg
│ │ ├── http-ch-01-netowrk-layout.drawio.svg
│ │ └── http-ch-04-4-3.drawio.svg
│ └── readme.md
├── TCP-IP-详解-卷1
│ ├── chapter-01.md
│ ├── chapter-02.md
│ ├── chapter-03.md
│ ├── chapter-04.md
│ ├── chapter-05.md
│ ├── chapter-06.md
│ ├── chapter-07.md
│ ├── chapter-08.md
│ ├── chapter-09.md
│ ├── chapter-10.md
│ ├── chapter-11.md
│ ├── chapter-12.md
│ ├── chapter-13.md
│ ├── chapter-14.md
│ ├── chapter-15.md
│ ├── chapter-16.md
│ ├── chapter-17.md
│ ├── chapter-18.md
│ ├── chapter-19.md
│ ├── chapter-20.md
│ ├── chapter-21.md
│ ├── chapter-22.md
│ ├── chapter-23.md
│ ├── chapter-24.md
│ ├── images
│ │ ├── TCP-IP-1-1.png
│ │ ├── TCP-IP-1-1.svg
│ │ ├── TCP-IP-1-2.png
│ │ ├── TCP-IP-1-2.svg
│ │ ├── TCP-IP-1-3.png
│ │ ├── TCP-IP-1-3.svg
│ │ ├── TCP-IP-1-4.png
│ │ ├── TCP-IP-1-4.svg
│ │ ├── TCP-IP-1-5.png
│ │ ├── TCP-IP-1-5.svg
│ │ ├── TCP-IP-1-6.png
│ │ ├── TCP-IP-1-6.svg
│ │ ├── TCP-IP-1-7.png
│ │ ├── TCP-IP-1-7.svg
│ │ ├── TCP-IP-10-1.png
│ │ ├── TCP-IP-10-1.svg
│ │ ├── TCP-IP-10-2.drawio.svg
│ │ ├── TCP-IP-10-2.png
│ │ ├── TCP-IP-10-2.svg
│ │ ├── TCP-IP-11-1.png
│ │ ├── TCP-IP-11-1.svg
│ │ ├── TCP-IP-11-2.png
│ │ ├── TCP-IP-11-2.svg
│ │ ├── TCP-IP-12-1.png
│ │ ├── TCP-IP-12-1.svg
│ │ ├── TCP-IP-13-1.png
│ │ ├── TCP-IP-13-1.svg
│ │ ├── TCP-IP-13-2.png
│ │ ├── TCP-IP-13-2.svg
│ │ ├── TCP-IP-14-3.png
│ │ ├── TCP-IP-14-3.svg
│ │ ├── TCP-IP-16-1.png
│ │ ├── TCP-IP-16-1.svg
│ │ ├── TCP-IP-17-1.png
│ │ ├── TCP-IP-17-1.svg
│ │ ├── TCP-IP-17-2.png
│ │ ├── TCP-IP-17-2.svg
│ │ ├── TCP-IP-18-10.png
│ │ ├── TCP-IP-18-10.svg
│ │ ├── TCP-IP-18-12.png
│ │ ├── TCP-IP-18-12.svg
│ │ ├── TCP-IP-18-13.png
│ │ ├── TCP-IP-18-13.svg
│ │ ├── TCP-IP-18-20.png
│ │ ├── TCP-IP-18-20.svg
│ │ ├── TCP-IP-18-3.png
│ │ ├── TCP-IP-18-3.svg
│ │ ├── TCP-IP-18-4.png
│ │ ├── TCP-IP-18-4.svg
│ │ ├── TCP-IP-2-1.png
│ │ ├── TCP-IP-2-1.svg
│ │ ├── TCP-IP-2-4.png
│ │ ├── TCP-IP-2-4.svg
│ │ ├── TCP-IP-20-4.png
│ │ ├── TCP-IP-20-4.svg
│ │ ├── TCP-IP-20-5.drawio.svg
│ │ ├── TCP-IP-20-5.png
│ │ ├── TCP-IP-20-5.svg
│ │ ├── TCP-IP-3-1.png
│ │ ├── TCP-IP-3-1.svg
│ │ ├── TCP-IP-3-7.png
│ │ ├── TCP-IP-3-7.svg
│ │ ├── TCP-IP-4-1.drawio.svg
│ │ ├── TCP-IP-4-1.png
│ │ ├── TCP-IP-4-1.svg
│ │ ├── TCP-IP-4-3.drawio.svg
│ │ ├── TCP-IP-4-3.png
│ │ ├── TCP-IP-4-3.svg
│ │ ├── TCP-IP-6-1.png
│ │ ├── TCP-IP-6-1.svg
│ │ ├── TCP-IP-6-10.png
│ │ ├── TCP-IP-6-10.svg
│ │ ├── TCP-IP-6-2.png
│ │ ├── TCP-IP-6-2.svg
│ │ ├── TCP-IP-6-9.png
│ │ ├── TCP-IP-6-9.svg
│ │ ├── TCP-IP-dubbo.svg
│ │ └── little-big-endian.jpg
│ └── readme.md
├── Unix网络编程-卷1
│ ├── chapter-01.md
│ ├── chapter-02.md
│ ├── chapter-03.md
│ ├── chapter-04.md
│ ├── chapter-05.md
│ ├── chapter-06.md
│ ├── chapter-07.md
│ ├── chapter-14.md
│ ├── chapter-15.md
│ ├── chapter-16.md
│ ├── chapter-25.md
│ ├── images
│ │ ├── unix-1.jpg
│ │ ├── unix-network-1-4-1.png
│ │ ├── unix-network-1-4-1.svg
│ │ ├── unix-network-1-6-1.png
│ │ ├── unix-network-1-6-1.svg
│ │ ├── unix-network-1-6-2.png
│ │ ├── unix-network-1-6-2.svg
│ │ ├── unix-network-1-6-3.png
│ │ ├── unix-network-1-6-3.svg
│ │ ├── unix-network-1-6-4.png
│ │ ├── unix-network-1-6-4.svg
│ │ ├── unix-network-1-6-5.png
│ │ ├── unix-network-1-6-5.svg
│ │ ├── unix-network-1-6-6.png
│ │ └── unix-network-1-6-6.svg
│ └── readme.md
├── images
│ └── Tcp_state_diagram.png
├── readme.md
└── zzz.md
├── todo
└── 2022-03.md
├── vscode
└── readme.md
└── zookeeper
├── curator.md
├── images
└── zookeeper-zxid.drawio.svg
├── paxos.md
├── readme.md
├── zab-vs-raft.md
├── zab.md
├── zooKeeper-overview.md
├── zooKeeper.md
├── zookeeper-barriers.md
├── zookeeper-blog.md
├── zookeeper-lock.md
├── zookeeper-programmers.md
└── zookeeper-queues.md
/.gitignore:
--------------------------------------------------------------------------------
1 | .class
2 | target
3 | .DS_Store
4 | .classpath
5 | .settings
6 | bin
7 | .project
8 | test-output
9 | .idea
10 | *.iml
11 | *.patch
--------------------------------------------------------------------------------
/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "editor.wordWrap": "on"
3 | }
--------------------------------------------------------------------------------
/PM/提效.md:
--------------------------------------------------------------------------------
1 | # 提效
2 |
3 | - 个人如何提效
4 | - 自己好的编程习惯
5 | - 团队如何提效
6 | - 团队的沟通
7 | - 团队规范,公约
8 | - 公司如何提效
9 | - 公司流程
--------------------------------------------------------------------------------
/algorithm/binary-tree.md:
--------------------------------------------------------------------------------
1 | # binary tree
2 |
3 | ## Links
4 |
5 | - [红黑树](https://zhuanlan.zhihu.com/p/37470948)
6 | - [红黑树](https://blog.csdn.net/weixin_43790276/article/details/106042360)
7 | - [2-3树](https://www.cnblogs.com/tiancai/p/9072813.html)
--------------------------------------------------------------------------------
/algorithm/bloom-filter.md:
--------------------------------------------------------------------------------
1 | # 布隆过滤器
2 |
3 | - [https://www.cnblogs.com/ysocean/p/12594982.html](https://www.cnblogs.com/ysocean/p/12594982.html)
--------------------------------------------------------------------------------
/algorithm/data-structure.md:
--------------------------------------------------------------------------------
1 | # data structure
2 |
3 | 数据结构
4 |
5 | ## 数组
6 |
7 | ## 链表
8 |
9 | ## Hash 表
10 |
11 | ## 平衡树
12 |
13 | ## Log-Structured
14 |
15 | ## SSTable
16 |
17 | Sorted String Table
18 |
19 | ## LSM 树
20 |
21 | ## 红黑树
22 |
--------------------------------------------------------------------------------
/algorithm/dynamic-programming.md:
--------------------------------------------------------------------------------
1 | # dynamic programming
2 |
3 | **动态规划**
4 |
5 | 最优子结构、无后效性和重复子问题
6 |
--------------------------------------------------------------------------------
/algorithm/hash.md:
--------------------------------------------------------------------------------
1 | # 散列
2 |
3 | - 如何设计散列函数
4 | - 如何根据装载因子动态扩容
5 | - 以及如何选择散列冲突解决方法
6 | - 如何缩容
7 | - LinkedHashMap LRU
--------------------------------------------------------------------------------
/algorithm/heap.md:
--------------------------------------------------------------------------------
1 | # 堆
2 |
3 | 最大堆,最小堆: 堆的应用:优先级队列、求 Top K 和求中位数。
--------------------------------------------------------------------------------
/algorithm/images/recursion-tree.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/algorithm/images/recursion-tree.png
--------------------------------------------------------------------------------
/algorithm/linked-list.md:
--------------------------------------------------------------------------------
1 | # 链表
2 |
3 | ## Links
4 |
5 | - [链表的虚拟头节点好处](https://blog.csdn.net/HFGD2019/article/details/108760391)
6 |
--------------------------------------------------------------------------------
/algorithm/log.md:
--------------------------------------------------------------------------------
1 | # log
2 |
--------------------------------------------------------------------------------
/algorithm/queue.md:
--------------------------------------------------------------------------------
1 | # 队列
2 |
3 | - 入队 enqueue()
4 | - 出队 dequeue()
5 | - 顺序队列(用数组实现)和链式队列(用链表实现)
6 | - 循环队列
7 | - 阻塞队列和并发队列
8 | - 关键:如果判断,队列为空,队列已满
9 |
--------------------------------------------------------------------------------
/algorithm/red-black-tree.md:
--------------------------------------------------------------------------------
1 | # 红黑树
2 |
3 | 红黑树中的节点,一类被标记为黑色,一类被标记为红色。除此之外,一棵红黑树还需要满足这样几个要求:
4 |
5 | - 根节点是黑色的;
6 | - 每个叶子节点都是黑色的空节点(NIL),也就是说,叶子节点不存储数据;
7 | - 任何相邻的节点都不能同时为红色,也就是说,红色节点是被黑色节点隔开的;
8 | - 每个节点,从该节点到达其可达叶子节点的所有路径,都包含相同数目的黑色节点;
9 |
10 | ## Links
11 |
12 | - [https://www.cnblogs.com/tiancai/p/9072813.html](https://www.cnblogs.com/tiancai/p/9072813.html)
--------------------------------------------------------------------------------
/algorithm/stack.md:
--------------------------------------------------------------------------------
1 | # 栈
2 |
3 | > 栈的特点:具有`记忆`功能
4 |
5 | - 栈是一种“操作受限”的线性表,只允许在一端插入和删除数据
6 | - 当某个数据集合只涉及在一端插入和删除数据,并且满足后进先出、先进后出的特性,这时我们就应该首选“栈”这种数据结构
7 | - 用数组实现的栈,我们叫作顺序栈,用链表实现的栈,我们叫作链式栈
8 | - 栈的应用:表达式求值
9 | - 栈的应用:函数调用栈
10 | - 栈的应用:栈在括号匹配中的应用
11 | - 入栈 push()和出栈 pop()
--------------------------------------------------------------------------------
/algorithm/string_mtach.md:
--------------------------------------------------------------------------------
1 | # 字符串匹配
2 |
3 | - Trie 树和 AC 自动机
4 | - RK 算法是 BF 算法
5 | - Brute Force 暴力匹配算法
6 | -
--------------------------------------------------------------------------------
/architecture-design/draft.md:
--------------------------------------------------------------------------------
1 | # 草稿
2 |
3 | ## 架构
4 |
5 | 技术-架构-业务
6 |
7 | 判断+取舍
8 |
9 | 服务化+容器化+网格化+云产品
--------------------------------------------------------------------------------
/architecture-design/readme.md:
--------------------------------------------------------------------------------
1 | # 系统设计
2 |
3 | [系统设计总结](readme-summary.md)
--------------------------------------------------------------------------------
/c_plus_plus/imgaes/c_p_p_pointer_arry.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/c_plus_plus/imgaes/c_p_p_pointer_arry.png
--------------------------------------------------------------------------------
/c_plus_plus/readme.md:
--------------------------------------------------------------------------------
1 | # C++ 相关
--------------------------------------------------------------------------------
/clang/readme.md:
--------------------------------------------------------------------------------
1 | # CLang
2 |
3 | ## Links
4 |
5 | - [void*](https://zhuanlan.zhihu.com/p/163676489)
6 |
--------------------------------------------------------------------------------
/cloud-native/readme.md:
--------------------------------------------------------------------------------
1 | # cloud native
2 |
3 | iaas
4 | paas
5 | saas
6 | serverless
7 |
--------------------------------------------------------------------------------
/css/CSS权威指南/images/box-mode.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/css/CSS权威指南/images/box-mode.png
--------------------------------------------------------------------------------
/css/CSS权威指南/images/css-child-el.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/css/CSS权威指南/images/css-child-el.png
--------------------------------------------------------------------------------
/css/CSS权威指南/images/display-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/css/CSS权威指南/images/display-2.png
--------------------------------------------------------------------------------
/css/CSS权威指南/images/display.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/css/CSS权威指南/images/display.png
--------------------------------------------------------------------------------
/css/CSS权威指南/images/element-box.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/css/CSS权威指南/images/element-box.png
--------------------------------------------------------------------------------
/css/CSS权威指南/images/rate-cal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/css/CSS权威指南/images/rate-cal.png
--------------------------------------------------------------------------------
/css/CSS权威指南/images/white-space.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/css/CSS权威指南/images/white-space.png
--------------------------------------------------------------------------------
/css/CSS权威指南/readme.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/css/CSS权威指南/readme.md
--------------------------------------------------------------------------------
/css/readme.md:
--------------------------------------------------------------------------------
1 | # CSS
2 |
--------------------------------------------------------------------------------
/day-day-year-year/2019.md:
--------------------------------------------------------------------------------
1 | # 2019
2 |
3 | - [Dubbo 源码解析](../dubbo/readme.md)
--------------------------------------------------------------------------------
/day-day-year-year/2020.md:
--------------------------------------------------------------------------------
1 | # 2020
2 |
3 | - golang `两本`
4 | - rocketmq `一本`
5 | - 算法 `两本`
6 | - spring boot `一本`
7 |
8 | - 《Java高并发编程详解:多线程与架构设计》
9 | - [《汇编语言 第三版》](../assembly/汇编语言-第三版.md)王爽
10 | - [《深入理解jvm字节码》](../jvm/深入理解jvm字节码.md) 张亚
11 | - [golang 解析Java class 文件](https://github.com/web1992/goclass)
--------------------------------------------------------------------------------
/day-day-year-year/2021.md:
--------------------------------------------------------------------------------
1 | # 2021
2 |
3 | |框架|完成情况|
4 | |-----|-----|
5 | RocketMQ | 看了消息的整体流转流程,存储,消息消费+负载均衡
6 | Nacos | 无
7 | XXLJOB | 无
8 | Netty | 看了Netty 的内存管理
9 | Dubbo | 无
10 | TCP/IP | 看了《TCP-IP-详解-卷1》大部分内容,看了《Unix网络编程-卷1》小部门内容
11 | Seata | 看了源码的整体架构,项目中应用了TCC事物模式
12 |
--------------------------------------------------------------------------------
/day-day-year-year/2022.md:
--------------------------------------------------------------------------------
1 | # 2022
2 |
3 | - golang 实践,参与开源
4 | - 算法 刷题+实践
5 | - 网络/存储 实践
6 | - JVM G1,ZGC 学习
7 | - Linux 学习
8 | - NACOS
9 | - ES
10 |
--------------------------------------------------------------------------------
/day-day-year-year/2023.md:
--------------------------------------------------------------------------------
1 | # 2023
2 |
3 | - 架构
4 | - Spring Cloude
5 | - 算法
6 | - Http 权威指南
7 |
--------------------------------------------------------------------------------
/ddd/领域驱动设计/ddd-01.md:
--------------------------------------------------------------------------------
1 | # 01
2 |
--------------------------------------------------------------------------------
/ddd/领域驱动设计/ddd-02.md:
--------------------------------------------------------------------------------
1 | # 02
2 |
3 | 提出有力的问题:
4 |
5 | 这个系统的需求来自何处?
6 | 这个系统如何为业务提供价值?
7 | 如果不构建这个系统会发生什么?
8 |
--------------------------------------------------------------------------------
/ddd/领域驱动设计/ddd-03.md:
--------------------------------------------------------------------------------
1 | # 03
2 |
3 | 01. 核心域
4 | 02. 通用域
5 | 03. 支撑域
6 | 04. 专注于核心域
7 | 05. 并不是所有的系统都有核心域
8 |
--------------------------------------------------------------------------------
/ddd/领域驱动设计/ddd-04.md:
--------------------------------------------------------------------------------
1 | # 04
2 |
3 | 模型驱动设计
4 |
5 | - 领域模型的定义
6 | - 代码模型和分析模型保持同步
7 |
8 | 限制你的抽象:
9 |
10 | - 在存在变体的时候才进行抽象
11 | - 将你的抽象重点放在合适的抽象层级
12 | - 对行为而非实现进行抽象
13 | - 进早频繁的在代码中实现建模
14 | - 不要止步于第一个好想法
15 |
--------------------------------------------------------------------------------
/ddd/领域驱动设计/ddd-05.md:
--------------------------------------------------------------------------------
1 | # 05
2 |
3 | 领域模型实现模式
4 |
5 | - DDD 的重点是管理复杂性
6 | - 活动记录模式
7 | - 贫血领域模型
8 | - 函数模式
9 | - 表模块
10 |
11 | > 领域层在代码中的位置
12 |
13 | 
14 |
15 | > 领域模型模式
16 |
17 | 
18 |
--------------------------------------------------------------------------------
/ddd/领域驱动设计/ddd-06.md:
--------------------------------------------------------------------------------
1 | # 06
2 |
3 | ## 使用有界上下文维护领域模型的完整性
4 |
5 | 
6 |
--------------------------------------------------------------------------------
/ddd/领域驱动设计/ddd-07.md:
--------------------------------------------------------------------------------
1 | # 07
2 |
3 | ## 上下文映射
4 |
--------------------------------------------------------------------------------
/ddd/领域驱动设计/ddd-08.md:
--------------------------------------------------------------------------------
1 | # 08
2 |
3 | ## 应用程序架构
4 |
--------------------------------------------------------------------------------
/ddd/领域驱动设计/ddd-09.md:
--------------------------------------------------------------------------------
1 | # 09
2 |
--------------------------------------------------------------------------------
/ddd/领域驱动设计/ddd-10.md:
--------------------------------------------------------------------------------
1 | # 10
2 |
--------------------------------------------------------------------------------
/ddd/领域驱动设计/ddd-core.md:
--------------------------------------------------------------------------------
1 | # ddd 核心
2 |
3 | - 统一语言
4 | - 领域划分
5 | - 领域建模
6 |
--------------------------------------------------------------------------------
/ddd/领域驱动设计/images/ddd-05-01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/ddd/领域驱动设计/images/ddd-05-01.png
--------------------------------------------------------------------------------
/ddd/领域驱动设计/images/ddd-05-02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/ddd/领域驱动设计/images/ddd-05-02.png
--------------------------------------------------------------------------------
/ddd/领域驱动设计/images/ddd-06-01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/ddd/领域驱动设计/images/ddd-06-01.png
--------------------------------------------------------------------------------
/design-patterns/builder-pattern.md:
--------------------------------------------------------------------------------
1 | # Builder pattern
2 |
3 | ## The Builder design pattern solves problems like
4 |
5 | - How can a class (the same construction process) create different representations of a complex object?
6 | - How can a class that includes creating a complex object be simplified?
--------------------------------------------------------------------------------
/design-patterns/composite-pattern.md:
--------------------------------------------------------------------------------
1 | # Composite pattern
2 |
3 | - [Composite pattern](https://en.wikipedia.org/wiki/Composite_pattern)
4 |
--------------------------------------------------------------------------------
/design-patterns/gang-of-four-patterns.md:
--------------------------------------------------------------------------------
1 | # Gang of Four patterns
2 |
--------------------------------------------------------------------------------
/design-patterns/images/design-pattern.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/design-patterns/images/design-pattern.png
--------------------------------------------------------------------------------
/design-patterns/multiton-pattern.md:
--------------------------------------------------------------------------------
1 | # Multiton pattern
2 |
3 | - [Multiton pattern](https://en.wikipedia.org/wiki/Multiton_pattern)
4 |
5 | 多实例设计模式,相对单例而言,一个经典的设计就是`线程池`(object pool)
6 |
7 | The pattern simplifies retrieval of shared objects in an application.
8 |
9 | ## Drawbacks
10 |
--------------------------------------------------------------------------------
/designing-data-intensive-appliactins/ddia-01.md:
--------------------------------------------------------------------------------
1 | # 第1章 可靠、可扩展与可维护的应用系统
2 |
--------------------------------------------------------------------------------
/designing-data-intensive-appliactins/ddia-02.md:
--------------------------------------------------------------------------------
1 | # 第2章 数据模型与查询语言
2 |
--------------------------------------------------------------------------------
/designing-data-intensive-appliactins/ddia-03.md:
--------------------------------------------------------------------------------
1 | # 第3章 数据存储与检索
2 |
3 | 关键字:
4 |
5 | - 针对事物型工作负载 的存储引擎
6 | - 针对分析型负载 的存储引擎
7 | - 事物处理与分析处理
8 | - 面向列的存储
9 | - 关系型 数据库
10 | - NoSQL 数据库
11 | - 日志结构的存储引擎
12 | - 面向页面的存储引擎 (B-tree)
13 | - 哈希索引
14 | - Bitcask (Riak 中的默认存储引擎)
15 | - 日志的压缩与合并
16 | - SSTable 和 LSM-Tree
17 |
--------------------------------------------------------------------------------
/designing-data-intensive-appliactins/ddia-04.md:
--------------------------------------------------------------------------------
1 | # 第4章 数据编码与演化
2 |
--------------------------------------------------------------------------------
/designing-data-intensive-appliactins/ddia-05.md:
--------------------------------------------------------------------------------
1 | # 第5章 数据复制
2 |
--------------------------------------------------------------------------------
/designing-data-intensive-appliactins/ddia-08.md:
--------------------------------------------------------------------------------
1 | # 第 8 章 分布式系统的挑战
2 |
3 | - 不可靠的网络
4 | - 不可靠的时钟
5 |
--------------------------------------------------------------------------------
/designing-data-intensive-appliactins/ddia-09.md:
--------------------------------------------------------------------------------
1 | # 第9章 一致性与共识
2 |
--------------------------------------------------------------------------------
/docker/base/namespace.md:
--------------------------------------------------------------------------------
1 | # namespace
2 |
3 | - mount
4 | - uts
5 | - pid
6 | - network
7 | - user
8 | - ipc
9 | - cgroup
10 |
--------------------------------------------------------------------------------
/docker/demo/docker-mysql.md:
--------------------------------------------------------------------------------
1 | # mysql
2 |
3 | ```sh
4 | docker run -itd --name mysql-test -p 3306:3306 -e MYSQL_ROOT_PASSWORD=root mysql:5.7
5 | ```
--------------------------------------------------------------------------------
/docker/demo/redis.md:
--------------------------------------------------------------------------------
1 | # redis
2 |
3 | ./redis-cli -h 127.0.0.1 -p 7001 -a 123456 cluster addslots {0..5461}
4 | ./redis-cli -h 127.0.0.1 -p 7002 -a 123456 cluster addslots {5462..10922}
5 | ./redis-cli -h 127.0.0.1 -p 7003 -a 123456 cluster addslots {10923..16383}
--------------------------------------------------------------------------------
/docker/docker-cgroup.md:
--------------------------------------------------------------------------------
1 | # cgroup
2 |
3 | ## cgroup 驱动
4 |
5 | systemed cgroup drover
6 | cgroupfs cgroup driver
7 |
8 | ## 容器中常用的cgroup
9 |
10 | - cpu cpuset cpuacct
11 | - memory
12 | - device
13 | - freezer
14 | - blkio
15 | - pid
16 |
17 | ## 不常用的cgruop
18 |
19 | - net_cls
20 | - net_prio
21 | - hugetlb
22 | - perf_event
23 | - rdma
24 |
--------------------------------------------------------------------------------
/docker/docker-changeset.md:
--------------------------------------------------------------------------------
1 | # changeset
2 |
--------------------------------------------------------------------------------
/docker/docker-chroot.md:
--------------------------------------------------------------------------------
1 | # chroot
2 |
--------------------------------------------------------------------------------
/docker/docker-cmd.md:
--------------------------------------------------------------------------------
1 | # docker cmd
2 |
3 | ```shell
4 | docker build -t xxx-app:$TAG ./xxx-app/
5 | docker tag xxx-app:$TAG xxx.com/xxx/xxx-app:$TAG
6 | docker push xxx.com/xxx/xxx-app:$TAG
7 | docker rmi xxx-app:$TAG
8 | docker rmi xxx.com/xxx/xxx-app:$TAG
9 | ```
10 |
--------------------------------------------------------------------------------
/docker/docker-images.md:
--------------------------------------------------------------------------------
1 | # docker images
2 |
3 | - 基于联合文件系统
4 | - 不同的层可以被其他镜像服用
5 | - 容器的可写层可以做成容器的新一层
6 |
--------------------------------------------------------------------------------
/docker/docker-jenkins.md:
--------------------------------------------------------------------------------
1 | # jenkins
2 |
3 | - [https://github.com/jenkinsci/docker](https://github.com/jenkinsci/docker)
4 |
5 | ```sh
6 | # 下载镜像
7 | docker pull jenkins
8 |
9 | # 启动
10 | docker run -d -v /Users/zl/Documents/dev/dockers/jenkins/jenkins_home:/var/jenkins_home -p 8080:8080 -p 50000:50000 jenkins/jenkins:lts
11 | ```
12 |
--------------------------------------------------------------------------------
/docker/docker-log.md:
--------------------------------------------------------------------------------
1 | # docker log
2 |
3 | - [www.cnblogs.com/operationhome/p/10907591.html](www.cnblogs.com/operationhome/p/10907591.html)
4 |
--------------------------------------------------------------------------------
/docker/docker-moby.md:
--------------------------------------------------------------------------------
1 | # mody
2 |
--------------------------------------------------------------------------------
/docker/docker-namespace.md:
--------------------------------------------------------------------------------
1 | # namespace
2 |
3 | - mount
4 | - uts
5 | - pid
6 | - network
7 | - user
8 | - ipc
9 | - cgroup
10 |
--------------------------------------------------------------------------------
/docker/docker-network.md:
--------------------------------------------------------------------------------
1 | # docker network
2 |
--------------------------------------------------------------------------------
/docker/docker-stack.md:
--------------------------------------------------------------------------------
1 | # docker stack
2 |
3 | docker 提供了大规模部署容器集群的支持,类似 k8s
4 |
--------------------------------------------------------------------------------
/docker/docker-swarm.md:
--------------------------------------------------------------------------------
1 | # Swarm
2 |
3 | docker 集群和编排
4 |
5 | ## Link
6 |
7 | - [https://docs.docker.com/get-started/part4/](https://docs.docker.com/get-started/part4/)
8 |
--------------------------------------------------------------------------------
/docker/docker-systemd.md:
--------------------------------------------------------------------------------
1 | # systemd
2 |
3 | - [http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html](http://www.ruanyifeng.com/blog/2016/03/systemd-tutorial-commands.html)
4 |
--------------------------------------------------------------------------------
/docker/docker-volume.md:
--------------------------------------------------------------------------------
1 | # docker volume
2 |
--------------------------------------------------------------------------------
/docker/docker-volumes.md:
--------------------------------------------------------------------------------
1 | # volumes
2 |
3 | - [https://docs.docker.com/storage/volumes/](https://docs.docker.com/storage/volumes/)
4 |
--------------------------------------------------------------------------------
/docker/rancher.md:
--------------------------------------------------------------------------------
1 | # rancher
2 |
--------------------------------------------------------------------------------
/docker/readme.md:
--------------------------------------------------------------------------------
1 | # docker
2 |
3 | ## List
4 |
5 | - [docker-compose.md](docker-compose.md)
6 | - [docker-swarm.md](docker-swarm.md)
7 | - [docker-dockerfile.md](docker-dockerfile.md)
8 |
--------------------------------------------------------------------------------
/draw/draw-1F2130.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/draw/draw-1F2130.png
--------------------------------------------------------------------------------
/draw/draw-25B88F.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/draw/draw-25B88F.png
--------------------------------------------------------------------------------
/draw/draw-47BBE7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/draw/draw-47BBE7.png
--------------------------------------------------------------------------------
/draw/draw-F5BD41.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/draw/draw-F5BD41.png
--------------------------------------------------------------------------------
/dubbo/dobbo-stream.md:
--------------------------------------------------------------------------------
1 | # dubbo stream
2 |
3 | Dubbo 中对于 IO 流的封装。
4 |
5 | - ChannelBufferOutputStream 输出流
6 | - ChannelBufferInputStream 输入流
7 |
8 | - [x] [dubbo-channel-buffer.md](dubbo-channel-buffer.md)
9 | - [x] [dubbo-input-output-stream.md](dubbo-input-output-stream.md)
10 |
--------------------------------------------------------------------------------
/dubbo/dubbo-annotation.md:
--------------------------------------------------------------------------------
1 | # Dubbo Annotation
2 |
--------------------------------------------------------------------------------
/dubbo/dubbo-get-start.md:
--------------------------------------------------------------------------------
1 | # dubbo get start
2 |
3 | ## 工具
4 |
5 | - Git
6 | - jdk
7 | - MAVEN
8 | - idea/eclipse
9 |
10 | `maven` 阿里的镜像,下载速度较快
11 |
12 | ```xml
13 |
14 | nexus-aliyun
15 | *
16 | Nexus aliyun
17 | http://maven.aliyun.com/nexus/content/groups/public
18 |
19 | ```
20 |
--------------------------------------------------------------------------------
/dubbo/dubbo-moudes.md:
--------------------------------------------------------------------------------
1 | # dubbo-moudes
2 |
3 | Dubbo 的模块介绍。
4 |
--------------------------------------------------------------------------------
/dubbo/dubbo-reset.md:
--------------------------------------------------------------------------------
1 | # dubbo reset
2 |
3 | `dubbo` `reset(http)` 服务集成
4 |
5 | `dubbo` 对 `protocl` 进行了抽象,默认的协议是 `DubboProtocol`,是面向 `TCP` 的协议
6 |
7 | 而 `dubbo reset` 是 `RestProtocol` 是面向 `http` 协议 `RestProtocol` 底层依赖 `jetty`
--------------------------------------------------------------------------------
/dubbo/dubbo-rpc-context.md:
--------------------------------------------------------------------------------
1 | # RpcContext
2 |
3 | ## InternalThreadLocal
--------------------------------------------------------------------------------
/dubbo/dubbo-rpc.md:
--------------------------------------------------------------------------------
1 | # rpc
--------------------------------------------------------------------------------
/dubbo/dubbo-spring.md:
--------------------------------------------------------------------------------
1 | # dubbo spring
2 |
3 | `dubbo` 中 `spring` 的使用
4 |
5 | ## dubbo-config
6 |
7 | `dubbo-config` 模块提供 dubbo 配置相关的处理,`dubbo-config-spring` 基于 spring 的配置
8 |
9 | ## spring bean
10 |
11 | - ConfigCenterBean
12 | - ReferenceBean
13 | - ServiceBean
14 |
--------------------------------------------------------------------------------
/dubbo/dubbo-url.md:
--------------------------------------------------------------------------------
1 | # dubbo url
2 |
--------------------------------------------------------------------------------
/dubbo/images/TCP-IP-17-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/TCP-IP-17-2.png
--------------------------------------------------------------------------------
/dubbo/images/TCP-IP-3-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/TCP-IP-3-1.png
--------------------------------------------------------------------------------
/dubbo/images/TCP-IP-dubbo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/TCP-IP-dubbo.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-AllChannelHandler.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-AllChannelHandler.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-AppResponse.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-AppResponse.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-AsyncRpcResult.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-AsyncRpcResult.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-ChannelBuffer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-ChannelBuffer.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-DecodeHandler.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-DecodeHandler.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-DecodeableRpcInvocation.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-DecodeableRpcInvocation.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-DecodeableRpcResult.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-DecodeableRpcResult.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-DubboCodec.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-DubboCodec.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-ExchangeHandler.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-ExchangeHandler.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-HeaderExchangeChannel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-HeaderExchangeChannel.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-HeaderExchangeClient.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-HeaderExchangeClient.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-HeaderExchangeServer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-HeaderExchangeServer.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-Invoker.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-Invoker.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-JavassistProxyFactory.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-JavassistProxyFactory.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-JdkProxyFactory.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-JdkProxyFactory.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-NettyClient.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-NettyClient.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-NettyServer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-NettyServer.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-ReferenceBean.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-ReferenceBean.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-RouterFactory.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-RouterFactory.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-ServiceBean.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-ServiceBean.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-TelnetHandler.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-TelnetHandler.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-asyn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-asyn.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-channel-handler-all.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-channel-handler-all.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-cluster.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-cluster.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-codec2-protocol.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-codec2-protocol.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-codec2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-codec2.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-config-center-useage.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-config-center-useage.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-customer-invoker.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-customer-invoker.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-customer-registry.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-customer-registry.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-framework.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-framework.jpg
--------------------------------------------------------------------------------
/dubbo/images/dubbo-invoker-stack.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-invoker-stack.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-moudes.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-moudes.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-overrideSubscribeUrl-vs-providerUrl.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-overrideSubscribeUrl-vs-providerUrl.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-protocol-export.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-protocol-export.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-protocol-registry-protocol.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-protocol-registry-protocol.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-registry-multicast.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-registry-multicast.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-registry-zookeeper.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-registry-zookeeper.png
--------------------------------------------------------------------------------
/dubbo/images/dubbo-router-tag.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/dubbo-router-tag.png
--------------------------------------------------------------------------------
/dubbo/images/input-stream.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/input-stream.png
--------------------------------------------------------------------------------
/dubbo/images/invoke-arch.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/invoke-arch.jpeg
--------------------------------------------------------------------------------
/dubbo/images/output-stream.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/dubbo/images/output-stream.png
--------------------------------------------------------------------------------
/es/ElasticSearch-权威指南-中文版/es-09.md:
--------------------------------------------------------------------------------
1 | # 09 分布式搜索
2 |
3 | - 查询然后取回(query then fetch)
4 | - 查询阶段
5 | - 取回阶段
6 | - 强烈不建议使用深分页 (form:10000 size:50000)
7 | - preference(偏爱)
8 | - 结果震荡(Bouncing Results) 随机字符串
9 | - scroll(滚屏)
10 | - scan(扫描)
11 |
--------------------------------------------------------------------------------
/es/ElasticSearch-权威指南-中文版/es-15.md:
--------------------------------------------------------------------------------
1 | # 15 模糊匹配
2 |
3 | - 段落匹配(phrase matching)或者模糊匹配(proximity matching)
4 |
--------------------------------------------------------------------------------
/es/ElasticSearch-权威指南-中文版/images/readme.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/es/ElasticSearch-权威指南-中文版/images/readme.md
--------------------------------------------------------------------------------
/es/ElasticSearch-权威指南-中文版/readme.md:
--------------------------------------------------------------------------------
1 | # Elastic Search-权威指南-中文版
2 |
3 | 此文已经不建议阅读,版本太低
4 |
5 | 这里的翻译文档,有些搜索语法是过时的,注意 ES 版本!!!
6 |
7 | - [Elastic Search-权威指南-中文版.pdf](https://www.aliyundrive.com/s/wQVsSFCrycZ)
--------------------------------------------------------------------------------
/es/es-agg.md:
--------------------------------------------------------------------------------
1 | # ES agg 聚合
2 |
3 |
4 | - bucket
5 | - stats
6 | - count
7 | - min
8 | - max
9 | - avg
10 | - sum
11 | - terms
12 | -
--------------------------------------------------------------------------------
/es/es-api.md:
--------------------------------------------------------------------------------
1 | # ES 常用的命令
2 |
3 | - GET _cluster/health
4 | - _cat/nodes
5 | - _cat/shards
6 | - 批量的API
7 | - POST _bulk
8 | - GET /_mget
9 | - GET /test/_mget
10 | - GET /_mget
11 | - POST kibana_sample_data_ecommerce/_msearch
12 |
13 |
--------------------------------------------------------------------------------
/es/es-cerebro.md:
--------------------------------------------------------------------------------
1 | # cerebro
2 |
3 | https://github.com/lmenezes/cerebro
--------------------------------------------------------------------------------
/es/es-data-version.md:
--------------------------------------------------------------------------------
1 | # ES 数据更新
2 |
3 |
4 | ES中的文档是不可变更的。如果你更新一个文档,会将就文档标记为删除,同时增加一个全新的文档。同时文档的version字段加1
5 |
6 | 内部版本控制.
7 | - If_seq_no + If_primary_term
8 |
9 | 使用外部版本(使用其他数据库作为主要数据存储)
10 | - version + version_type=external
11 |
12 | ## Links
13 |
14 | - [If_seq_no + If_primary_term](https://developer.aliyun.com/article/789071)
--------------------------------------------------------------------------------
/es/es-sort.md:
--------------------------------------------------------------------------------
1 | # ES 排序
2 |
3 | ES 中聚合+排序的实现技术 `Doc Values` + `fielddata`
4 |
5 | - Doc Values 基于磁盘
6 | - fielddata 基于内存
7 | -
8 |
9 | ## Links
10 |
11 | - https://www.elastic.co/guide/cn/elasticsearch/guide/current/docvalues.html
12 | - https://www.elastic.co/guide/cn/elasticsearch/guide/current/_deep_dive_on_doc_values.html
13 | - [es排序](https://www.cnblogs.com/bonelee/p/6401531.html)
--------------------------------------------------------------------------------
/es/images/es-uri-search.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/es/images/es-uri-search.md
--------------------------------------------------------------------------------
/golang/go-array.md:
--------------------------------------------------------------------------------
1 | # array
2 |
--------------------------------------------------------------------------------
/golang/go-func.md:
--------------------------------------------------------------------------------
1 | # func
2 |
3 | ## 特性
4 |
5 | - 实参是按照值传递的,都是副本
6 | - 多个返回值
7 | - 函数变量,也是有类型的,只能和 nil 比较
8 | - 匿名函数
9 | - 函数变量可以拥有状态
10 | - defer 延迟函数调用
11 | - recover
12 | - recover + runtime.Stack
13 | - recover 应只恢复本包内的错误
14 |
15 | ## Links
16 |
17 | - [golang 方法调用](https://mp.weixin.qq.com/s/NHxsrAcqi0xBSXWlQOcjOw)
--------------------------------------------------------------------------------
/golang/go-goroutine.md:
--------------------------------------------------------------------------------
1 | # goroutine
2 |
3 | - [go 协程](https://mp.weixin.qq.com/s?__biz=MzAxMzc4Mzk1Mw==&mid=2649839964&idx=1&sn=6674b95ee40a309e4f7b4a6b89a96ebd&chksm=8398bfa2b4ef36b46e5fa04ab76253853f2bcfafe245b48045511f8ded4085d15f8cddda4cf2&scene=0#rd)
4 |
5 | - [协程vs线程](https://www.cnblogs.com/liang1101/p/12777831.html)
--------------------------------------------------------------------------------
/golang/go-mod.md:
--------------------------------------------------------------------------------
1 | # mod
2 |
3 | golang 包管理(依赖管理)的历史
4 |
5 | - [https://blog.wolfogre.com/posts/golang-package-history/](https://blog.wolfogre.com/posts/golang-package-history/)
6 |
--------------------------------------------------------------------------------
/golang/go-modules.md:
--------------------------------------------------------------------------------
1 | # Go modules
2 |
3 | > Go modules as a release and build tool are ready to use now.
4 |
5 | - [https://golang.org/cmd/go/#hdr-Modules__module_versions__and_more](https://golang.org/cmd/go/#hdr-Modules__module_versions__and_more)
--------------------------------------------------------------------------------
/golang/go-proxy.md:
--------------------------------------------------------------------------------
1 | # go proxy
2 |
3 | - [go proxy](http://mirrors.aliyun.com/goproxy/)
4 |
5 | ```sh
6 | export GOPROXY=https://mirrors.aliyun.com/goproxy/
7 | ```
8 |
--------------------------------------------------------------------------------
/golang/go-source.md:
--------------------------------------------------------------------------------
1 | # go 资源汇总
2 |
3 | - [go 测试,go2,各种汇总](https://developer.aliyun.com/article/742169?utm_content=g_1000110307)
4 |
5 | ## go 技能图谱
6 |
7 | 
8 |
--------------------------------------------------------------------------------
/golang/go-struct.md:
--------------------------------------------------------------------------------
1 | # struce
2 |
3 | ```go
4 | type People struct{
5 | Name String
6 | Age int
7 | }
8 | ```
9 |
10 | ## 特点
11 |
12 | - 结构体的成员如果是大写字母开头的,是可以导出的
13 | - 结构体的成员变量顺序不同,他们就是不同的结构体
14 | - 如果结构的成员都是可比较的,那么这个结构体就是可比较的
15 | - 可比较的结构体可以作为 map 的键类型
16 | - 结构体嵌套和匿名成员
17 |
18 |
19 | ## Links
20 |
21 | - [golang struct 值类型](https://blog.csdn.net/love666666shen/article/details/99882528)
--------------------------------------------------------------------------------
/golang/go-vendor.md:
--------------------------------------------------------------------------------
1 | # govendor
2 |
3 | - [https://www.cnblogs.com/shhnwangjian/p/9183007.html](https://www.cnblogs.com/shhnwangjian/p/9183007.html)
4 | - [https://www.cnblogs.com/shockerli/p/go-package-manage-tool-govendor.html](https://www.cnblogs.com/shockerli/p/go-package-manage-tool-govendor.html)
5 |
6 | ```sh
7 | go get -u -v github.com/kardianos/govendor
8 | ```
9 |
--------------------------------------------------------------------------------
/golang/head-first-go/head-first-go-01-syntax-basics.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/golang/head-first-go/head-first-go-01-syntax-basics.md
--------------------------------------------------------------------------------
/golang/head-first-go/head-first-go-02-conditionals-and-loops.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/golang/head-first-go/head-first-go-02-conditionals-and-loops.md
--------------------------------------------------------------------------------
/golang/head-first-go/head-first-go-03-functions.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/golang/head-first-go/head-first-go-03-functions.md
--------------------------------------------------------------------------------
/golang/head-first-go/head-first-go-05-arrays.md:
--------------------------------------------------------------------------------
1 | # array
2 |
--------------------------------------------------------------------------------
/golang/head-first-go/readme.md:
--------------------------------------------------------------------------------
1 | # Head First Go
2 |
3 | ## Chapter List
4 |
5 | - 1 syntax basics
6 | - 2 conditionals and loops
7 | - 3 functions
8 | - 4 packages
9 | - 5 arrays
10 |
--------------------------------------------------------------------------------
/golang/images/8srJD8LWg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/golang/images/8srJD8LWg.png
--------------------------------------------------------------------------------
/golang/the-go-programming-language/go-pl-01.md:
--------------------------------------------------------------------------------
1 | # 01 入门
2 |
--------------------------------------------------------------------------------
/golang/the-go-programming-language/go-pl-02.md:
--------------------------------------------------------------------------------
1 | # 02 程序结构
2 |
3 | ## type
4 |
5 | `type` 生命定义一个新的`命名类型`,它和某个已有类型使用相同的底层类型。
6 | 命名类型提供了一种方式来区分底层类型的不同或者不兼容使用,这样就不会在无意中混用。
7 |
8 | ## 包和文件
9 |
10 | 在 Go 语言中包的作用和其他语言中的库和模块的作用类似,用户支持模块化,封装,编译隔离和重用。
11 |
--------------------------------------------------------------------------------
/golang/the-go-programming-language/go-pl-03.md:
--------------------------------------------------------------------------------
1 | # 03 数据类型
2 |
3 | ## utf-8
4 |
5 | ## rune
6 |
7 | ## const
8 |
9 | ## iota
10 |
--------------------------------------------------------------------------------
/golang/the-go-programming-language/go-pl-04.md:
--------------------------------------------------------------------------------
1 | # 复合数据类型
2 |
3 | ## 数组
4 |
5 | ## slice
6 |
7 | ## map
8 |
9 | ## json
10 |
--------------------------------------------------------------------------------
/golang/the-go-programming-language/go-pl-05.md:
--------------------------------------------------------------------------------
1 | # 函数
2 |
--------------------------------------------------------------------------------
/golang/the-go-programming-language/go-pl-06.md:
--------------------------------------------------------------------------------
1 | # Method
2 |
--------------------------------------------------------------------------------
/golang/the-go-programming-language/go-pl-07.md:
--------------------------------------------------------------------------------
1 | # interface
2 |
--------------------------------------------------------------------------------
/golang/the-go-programming-language/readme.md:
--------------------------------------------------------------------------------
1 | # The Go Programming Language
2 |
3 | - [https://github.com/web1992/gopl.io.git](https://github.com/web1992/gopl.io.git)
--------------------------------------------------------------------------------
/hardware/PCB/readme.md:
--------------------------------------------------------------------------------
1 | # PCB 设计
2 |
3 | - [PCB 设计中,哪些器件的周围需要禁止铺铜的]()
--------------------------------------------------------------------------------
/hardware/readme.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/hardware/readme.md
--------------------------------------------------------------------------------
/hardware/全彩图解电子工程师入门手册/images/readme.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/hardware/全彩图解电子工程师入门手册/images/readme.md
--------------------------------------------------------------------------------
/hardware/全彩图解电子工程师入门手册/readme.md:
--------------------------------------------------------------------------------
1 | # 全彩图解电子工程师入门手册 (电子工程师全彩图解丛书) (张兴伟) (Z-Library).pdf
2 |
3 |
--------------------------------------------------------------------------------
/hardware/新概念模拟电路-1-晶体管/chapter-01-section-03.md:
--------------------------------------------------------------------------------
1 | # Section3.用NPN晶体管构建一个放大电路
2 |
3 |
--------------------------------------------------------------------------------
/hardware/新概念模拟电路-1-晶体管/chapter-01.md:
--------------------------------------------------------------------------------
1 | # 1.晶体管基础
2 |
3 | - 双极型晶体管(Bipolar Junction Transistor)
4 | - 场效应管(Field effect Transistor-FET)
--------------------------------------------------------------------------------
/hardware/新概念模拟电路-1-晶体管/images/section-1-7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/hardware/新概念模拟电路-1-晶体管/images/section-1-7.png
--------------------------------------------------------------------------------
/hardware/新概念模拟电路-1-晶体管/readme.md:
--------------------------------------------------------------------------------
1 | # 新概念模拟电路——晶体管
2 |
3 |
--------------------------------------------------------------------------------
/hardware/模拟电子技术基础-第四版/chatper-03.md:
--------------------------------------------------------------------------------
1 | # 第三节 PN 结与二极管的特性
2 |
3 |
--------------------------------------------------------------------------------
/hardware/模拟电子技术基础-第四版/chatper-04.md:
--------------------------------------------------------------------------------
1 | # 第四节 二极管的直流等效电路
2 |
3 |
--------------------------------------------------------------------------------
/hardware/模拟电子技术基础-第四版/images/0-2-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/hardware/模拟电子技术基础-第四版/images/0-2-1.png
--------------------------------------------------------------------------------
/hardware/模拟电子技术基础-第四版/images/analog-digital-signal.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/hardware/模拟电子技术基础-第四版/images/analog-digital-signal.png
--------------------------------------------------------------------------------
/hardware/模拟电子技术基础-第四版/images/载流子.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/hardware/模拟电子技术基础-第四版/images/载流子.png
--------------------------------------------------------------------------------
/hardware/模拟电子技术基础-第四版/readme.md:
--------------------------------------------------------------------------------
1 | # 模拟电子技术基础 (第四版) 华英成 童诗白 主编
2 |
3 |
4 |
5 | ## Links
6 |
7 | - [https://www.bilibili.com/video/BV1Y7411e7hQ](https://www.bilibili.com/video/BV1Y7411e7hQ)
--------------------------------------------------------------------------------
/heiheihei/readme.md:
--------------------------------------------------------------------------------
1 | # heiheihei
2 |
3 | - Spring SPI 中的类加载机制
4 | - MySQL 乐观锁
5 | - jvm 字节码优化
6 | - jvm 指令重排
7 | - JOSN 格式的缺点
8 |
--------------------------------------------------------------------------------
/idea/images/git-commit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/idea/images/git-commit.png
--------------------------------------------------------------------------------
/idea/images/git-log.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/idea/images/git-log.gif
--------------------------------------------------------------------------------
/idea/images/git-log.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/idea/images/git-log.png
--------------------------------------------------------------------------------
/idea/images/git-merge.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/idea/images/git-merge.gif
--------------------------------------------------------------------------------
/idea/images/hot-reload-main.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/idea/images/hot-reload-main.gif
--------------------------------------------------------------------------------
/idea/images/idea-tool-bar.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/idea/images/idea-tool-bar.png
--------------------------------------------------------------------------------
/idea/images/live-template-config.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/idea/images/live-template-config.png
--------------------------------------------------------------------------------
/idea/images/main.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/idea/images/main.gif
--------------------------------------------------------------------------------
/idea/images/tomcat-hot-reload-demo.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/idea/images/tomcat-hot-reload-demo.gif
--------------------------------------------------------------------------------
/idea/images/tomcat-hot-reload.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/idea/images/tomcat-hot-reload.gif
--------------------------------------------------------------------------------
/idea/readme.md:
--------------------------------------------------------------------------------
1 | # idea
2 |
--------------------------------------------------------------------------------
/java/assert.md:
--------------------------------------------------------------------------------
1 | # assert
2 |
3 | ## 例子
4 |
5 | ```java
6 | assert EMPTY_BUFFER instanceof EmptyByteBuf: "EMPTY_BUFFER must be an EmptyByteBuf.";
7 | ```
--------------------------------------------------------------------------------
/java/base-type.md:
--------------------------------------------------------------------------------
1 | # Base type
2 |
3 | - [java 基本类型](https://www.cnblogs.com/doit8791/archive/2012/05/25/2517448.html)
--------------------------------------------------------------------------------
/java/blocking-queue.md:
--------------------------------------------------------------------------------
1 | # BlockingQueue
2 |
3 | - [Queue](queue.md)
--------------------------------------------------------------------------------
/java/class.md:
--------------------------------------------------------------------------------
1 | # class
2 |
3 | ## class 文件结构
4 |
5 | - [https://coolshell.cn/articles/9229.html](https://coolshell.cn/articles/9229.html)
--------------------------------------------------------------------------------
/java/clh.md:
--------------------------------------------------------------------------------
1 | # CLH
2 |
3 | - [CLH (pdf)](http://www.cs.tau.ac.il/~shanir/nir-pubs-web/Papers/CLH.pdf)
4 | - [自旋锁&clh&mcs](https://coderbee.net/index.php/concurrent/20131115/577)
--------------------------------------------------------------------------------
/java/complement.md:
--------------------------------------------------------------------------------
1 | # complement 补码
2 |
3 | 补码 = `原码` -> `取反` -> `加1`
4 |
5 | - [https://www.cnblogs.com/zhangziqiu/archive/2011/03/30/ComputerCode.html](https://www.cnblogs.com/zhangziqiu/archive/2011/03/30/ComputerCode.html)
6 | - [https://blog.csdn.net/i6223671/article/details/88924481](https://blog.csdn.net/i6223671/article/details/88924481)
--------------------------------------------------------------------------------
/java/completable-future.md:
--------------------------------------------------------------------------------
1 | # CompletableFuture
2 |
--------------------------------------------------------------------------------
/java/copy-on-write.md:
--------------------------------------------------------------------------------
1 | # copy-on-write
2 |
3 | ## uml
4 |
5 | 
6 |
7 | ## link
8 |
9 | - [wiki](https://en.wikipedia.org/wiki/Copy-on-write)
10 | - [CopyOnWriteArrayList](https://www.javamex.com/tutorials/synchronization_concurrency_8_copy_on_write.shtml)
11 |
--------------------------------------------------------------------------------
/java/deque.md:
--------------------------------------------------------------------------------
1 | # Deque
2 |
3 | -[Deque (form oracle docs)](https://docs.oracle.com/javase/tutorial/collections/implementations/deque.html)
4 |
5 | 
--------------------------------------------------------------------------------
/java/druid/readme.md:
--------------------------------------------------------------------------------
1 | # druid
2 |
3 | `com.alibaba.druid.pool.DruidDataSource`
4 |
--------------------------------------------------------------------------------
/java/exception.md:
--------------------------------------------------------------------------------
1 | # exception
--------------------------------------------------------------------------------
/java/executor.md:
--------------------------------------------------------------------------------
1 | # Executor
2 |
3 | - [Future](future.md)
4 | - [ThreadPoolExecutor](thread-pool-executor.md)
5 | - [ScheduledThreadPoolExecutor](scheduled-thread-pool-executor.md)
6 |
7 | 
--------------------------------------------------------------------------------
/java/hashmap.md:
--------------------------------------------------------------------------------
1 | # HashMap
2 |
3 | jdk 1.8 `HashMap` 分析
4 |
5 | - [hashmap-get-put.md](hashmap-get-put.md)
6 | - [hashmap-init-and-resize.md](hashmap-init-and-resize.md)
7 | - [hashmap-treebin.md](hashmap-treebin.md)
8 |
--------------------------------------------------------------------------------
/java/images/ArrayBlockingQueue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/ArrayBlockingQueue.png
--------------------------------------------------------------------------------
/java/images/ArrayBlockingQueue02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/ArrayBlockingQueue02.png
--------------------------------------------------------------------------------
/java/images/Channel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/Channel.png
--------------------------------------------------------------------------------
/java/images/CopyOnWriteArrayList.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/CopyOnWriteArrayList.png
--------------------------------------------------------------------------------
/java/images/DelayedWorkQueue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/DelayedWorkQueue.png
--------------------------------------------------------------------------------
/java/images/FutureTask.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/FutureTask.png
--------------------------------------------------------------------------------
/java/images/LinkedBlockingQueue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/LinkedBlockingQueue.png
--------------------------------------------------------------------------------
/java/images/LinkedHashMap.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/LinkedHashMap.png
--------------------------------------------------------------------------------
/java/images/NioBuffer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/NioBuffer.png
--------------------------------------------------------------------------------
/java/images/ScheduledFutureTask.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/ScheduledFutureTask.png
--------------------------------------------------------------------------------
/java/images/ScheduledThreadPoolExecutor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/ScheduledThreadPoolExecutor.png
--------------------------------------------------------------------------------
/java/images/ServerSocketChannel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/ServerSocketChannel.png
--------------------------------------------------------------------------------
/java/images/SocketChannel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/SocketChannel.png
--------------------------------------------------------------------------------
/java/images/Sync.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/Sync.png
--------------------------------------------------------------------------------
/java/images/SynchronousQueue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/SynchronousQueue.png
--------------------------------------------------------------------------------
/java/images/ThreadPoolExecutor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/ThreadPoolExecutor.png
--------------------------------------------------------------------------------
/java/images/asq-wait-status-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/asq-wait-status-2.png
--------------------------------------------------------------------------------
/java/images/asq-wait-status.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/asq-wait-status.png
--------------------------------------------------------------------------------
/java/images/atomic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/atomic.png
--------------------------------------------------------------------------------
/java/images/class-loader.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/class-loader.png
--------------------------------------------------------------------------------
/java/images/concurrent-hash-map-node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/concurrent-hash-map-node.png
--------------------------------------------------------------------------------
/java/images/deque.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/deque.png
--------------------------------------------------------------------------------
/java/images/executor.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/executor.png
--------------------------------------------------------------------------------
/java/images/future.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/future.png
--------------------------------------------------------------------------------
/java/images/hash-demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/hash-demo.png
--------------------------------------------------------------------------------
/java/images/hashmap-bit-array.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/hashmap-bit-array.png
--------------------------------------------------------------------------------
/java/images/hashmap-element-move.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/hashmap-element-move.png
--------------------------------------------------------------------------------
/java/images/hashmap-new-array.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/hashmap-new-array.png
--------------------------------------------------------------------------------
/java/images/hashmap-node-to-tree.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/hashmap-node-to-tree.png
--------------------------------------------------------------------------------
/java/images/hashmap-tree-mock.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/hashmap-tree-mock.png
--------------------------------------------------------------------------------
/java/images/hashmap-tree-node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/hashmap-tree-node.png
--------------------------------------------------------------------------------
/java/images/hashmap-tree-rotate-left.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/hashmap-tree-rotate-left.png
--------------------------------------------------------------------------------
/java/images/hashmap-tree-rotate-right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/hashmap-tree-rotate-right.png
--------------------------------------------------------------------------------
/java/images/hashmap-tree-x-node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/hashmap-tree-x-node.png
--------------------------------------------------------------------------------
/java/images/hashmap-tree-x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/hashmap-tree-x.png
--------------------------------------------------------------------------------
/java/images/hashmap-tree.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/hashmap-tree.png
--------------------------------------------------------------------------------
/java/images/int-to-byte.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/int-to-byte.png
--------------------------------------------------------------------------------
/java/images/io-stream.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/io-stream.png
--------------------------------------------------------------------------------
/java/images/left-rotate.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/left-rotate.gif
--------------------------------------------------------------------------------
/java/images/linked-blocking-queue-put.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/linked-blocking-queue-put.png
--------------------------------------------------------------------------------
/java/images/list.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/list.png
--------------------------------------------------------------------------------
/java/images/map.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/map.png
--------------------------------------------------------------------------------
/java/images/queue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/queue.png
--------------------------------------------------------------------------------
/java/images/reader.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/reader.png
--------------------------------------------------------------------------------
/java/images/right-rotate.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/right-rotate.gif
--------------------------------------------------------------------------------
/java/images/set.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/set.png
--------------------------------------------------------------------------------
/java/images/thread-pool-ctl.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/thread-pool-ctl.png
--------------------------------------------------------------------------------
/java/images/threads-state.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/threads-state.gif
--------------------------------------------------------------------------------
/java/images/writer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java/images/writer.png
--------------------------------------------------------------------------------
/java/jdk-source-code.md:
--------------------------------------------------------------------------------
1 | # JDK 源码
2 |
3 | ## Links
4 |
5 | - [HashMap 源码](https://mp.weixin.qq.com/s/dmhUgdiAhebi4AE8oGhhIQ)
--------------------------------------------------------------------------------
/java/monitor.md:
--------------------------------------------------------------------------------
1 | # monitor
2 |
3 | - [jvm-monitor原理](https://blog.csdn.net/wojiao228925661/article/details/100145157)
--------------------------------------------------------------------------------
/java/nio-mapped-byte-buffer.md:
--------------------------------------------------------------------------------
1 | # MappedByteBuffer
2 |
3 | ## Links
4 |
5 | - [https://www.jianshu.com/p/220ccfc91e95](https://www.jianshu.com/p/220ccfc91e95)
6 | - [https://www.jianshu.com/p/f90866dcbffc](https://www.jianshu.com/p/f90866dcbffc)
7 |
--------------------------------------------------------------------------------
/java/nio-selectable-channel.md:
--------------------------------------------------------------------------------
1 | # SelectableChannel
--------------------------------------------------------------------------------
/java/nio-socket.md:
--------------------------------------------------------------------------------
1 | # socket
2 |
3 | ## ServerSocketChannel
4 |
--------------------------------------------------------------------------------
/java/nio/nio.chapter-01.md:
--------------------------------------------------------------------------------
1 | # I/O Basics and APIs
2 |
3 | ## Classic I/O
--------------------------------------------------------------------------------
/java/nio/nio.chapter-14.md:
--------------------------------------------------------------------------------
1 | # Chapter 14
2 |
3 | Completion of Socket Channel Functionality
4 |
5 | ## NetworkChannel
6 |
7 | `java.nio.channels.NetworkChannel`
8 |
--------------------------------------------------------------------------------
/java/nio/readme.md:
--------------------------------------------------------------------------------
1 | # Java.I.O.NIO.and.NIO.2
2 |
3 | `Java.I.O.NIO.and.NIO.2` 笔记
4 |
5 | ## Getting Started with I/O
6 |
7 | - [Chapter 1](nio.chapter-01.md)
8 |
9 | ## New I/O APIs
10 |
11 | - [Chapter 6](nio.chapter-06.md)
12 | - [Chapter 7](nio.chapter-07.md)
13 |
14 | ## More New I/O APIs
15 |
16 | - [Chapter 13](nio.chapter-13.md)
17 | - [Chapter 14](nio.chapter-14.md)
18 |
--------------------------------------------------------------------------------
/java/reentrant-read-write-lock.md:
--------------------------------------------------------------------------------
1 | # ReentrantReadWriteLock
2 |
3 | `ReentrantReadWriteLock` 是 `ReadWriteLock` 的一种实现
4 |
--------------------------------------------------------------------------------
/java/reflect.md:
--------------------------------------------------------------------------------
1 | # reflect
2 |
--------------------------------------------------------------------------------
/java/serializable.md:
--------------------------------------------------------------------------------
1 | # Serializable
2 |
3 | java中的序列化
4 |
5 | ## 参考文章
6 |
7 | - [Serializable 简介](http://www.hollischuang.com/archives/1140)
8 | - [IBM](https://www.ibm.com/developerworks/cn/java/j-lo-serial/index.html)
--------------------------------------------------------------------------------
/java/servlet.md:
--------------------------------------------------------------------------------
1 | # Servlet
2 |
3 | ## Links
4 |
5 | - [https://www.jianshu.com/p/c23ca9d26f64](https://www.jianshu.com/p/c23ca9d26f64)
--------------------------------------------------------------------------------
/java/set.md:
--------------------------------------------------------------------------------
1 | # set
2 |
3 | - [set(from oracle docs)](https://docs.oracle.com/javase/tutorial/collections/implementations/set.html)
4 |
5 | 
6 |
7 | ## TreeSet
8 |
9 | - [TreeSet (form java doc)](https://docs.oracle.com/javase/8/docs/api/java/util/TreeSet.html)
10 |
--------------------------------------------------------------------------------
/java/volatile.md:
--------------------------------------------------------------------------------
1 | # volatile
2 |
3 | 线程可见性变量,一个线程A对一个变量`a`的修改,另一个线程B,可以`看`到A线程的修改`a`之后新的值
4 |
5 | 但是注意`volatile` 在进行算数运行的时候,并不能保证线程安全
6 |
7 | ## 本质
8 |
9 | - 解决指令重排序的问题
10 | - 内存的可见性(内存平整,写无效,写直达)
11 |
12 | ## 问题
13 |
14 | - 多线程并发修改变量为什么会出现线程安全问题?本质原因是什么?
15 | - `volatile` 是如何解决上面的线程安全问题的呢?
16 |
--------------------------------------------------------------------------------
/java8/collector.md:
--------------------------------------------------------------------------------
1 | # Collector and Collectors
2 |
3 | ## Collector
4 |
5 | ## Collectors
6 |
--------------------------------------------------------------------------------
/java8/file.md:
--------------------------------------------------------------------------------
1 | # file
2 |
3 | - [examples of process file](http://winterbe.com/posts/2015/03/25/java8-examples-string-number-math-files/)
--------------------------------------------------------------------------------
/java8/images/CompletableFuture.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java8/images/CompletableFuture.png
--------------------------------------------------------------------------------
/java8/images/java8-complate-future-stream.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java8/images/java8-complate-future-stream.png
--------------------------------------------------------------------------------
/java8/images/stream.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/java8/images/stream.png
--------------------------------------------------------------------------------
/java8/java8-in-action.md:
--------------------------------------------------------------------------------
1 | # java 相关
2 |
3 | - [《Java 8 实战》(Java 8 in action)](https://item.jd.com/11917790.html)
4 |
5 | ## java8 引入的三个新特性
6 |
7 | - [lambda](lambda.md)
8 | - [stream](stream.md)
9 | - [default method](default-method.md)
--------------------------------------------------------------------------------
/java8/localdatetime.md:
--------------------------------------------------------------------------------
1 | # LocalDateTime
--------------------------------------------------------------------------------
/java8/pipeline.md:
--------------------------------------------------------------------------------
1 | # pipeline
2 |
3 | ## ReferencePipeline
4 |
5 | `ReferencePipeline` 是 `Stream` 的主要实现类之一
6 |
--------------------------------------------------------------------------------
/java8/stream-impl.md:
--------------------------------------------------------------------------------
1 | # Stream 的实现
2 |
3 | 本质:for + chain (for循环 + 调用链)
4 |
--------------------------------------------------------------------------------
/jvm/HotSopt实战/chapter-01.md:
--------------------------------------------------------------------------------
1 | # 第一章 初识HotSpot
2 |
--------------------------------------------------------------------------------
/jvm/Java并发编程的艺术/01.md:
--------------------------------------------------------------------------------
1 | # 01 并发编程的挑战
2 |
3 | - 线程上下文切换
4 | - vmstat
5 | - Lmbench3
6 | - CAS 算法
7 | - 资源限制的挑战
8 |
--------------------------------------------------------------------------------
/jvm/Java并发编程的艺术/03.md:
--------------------------------------------------------------------------------
1 | # 03 Java 的内存模型
2 |
3 | - JMM(Java内存模型)
4 | - 线程之间的通信机制:共享内存(Java)和消息传递(golang 的channel)
5 | - 指令重排
6 | - 编译器优化的指令重排
7 | - 指令级并行的重排序
8 | - 内存系统的重排序
9 | - happens-befores
--------------------------------------------------------------------------------
/jvm/Java并发编程的艺术/readme.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/jvm/Java并发编程的艺术/readme.md
--------------------------------------------------------------------------------
/jvm/images/jvm_op_code.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/jvm/images/jvm_op_code.png
--------------------------------------------------------------------------------
/jvm/images/load-store.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/jvm/images/load-store.png
--------------------------------------------------------------------------------
/jvm/images/memory-analyze/dominator-tree-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/jvm/images/memory-analyze/dominator-tree-2.png
--------------------------------------------------------------------------------
/jvm/images/memory-analyze/dominator-tree.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/jvm/images/memory-analyze/dominator-tree.png
--------------------------------------------------------------------------------
/jvm/images/memory-analyze/leak-suspect.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/jvm/images/memory-analyze/leak-suspect.png
--------------------------------------------------------------------------------
/jvm/images/memory-analyze/report.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/jvm/images/memory-analyze/report.png
--------------------------------------------------------------------------------
/jvm/images/memory-analyze/thread-stack.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/jvm/images/memory-analyze/thread-stack.png
--------------------------------------------------------------------------------
/jvm/images/memory-analyze/visualvm-hprof.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/jvm/images/memory-analyze/visualvm-hprof.png
--------------------------------------------------------------------------------
/jvm/jvm-asm.md:
--------------------------------------------------------------------------------
1 | # asm
--------------------------------------------------------------------------------
/jvm/jvm-config.md:
--------------------------------------------------------------------------------
1 | # JVM 配置
2 |
3 | ## 参数设置
4 |
5 | ```java
6 | -server
7 | -Xms1024m
8 | -Xmx1024m
9 | -Xss256k
10 | -XX:PermSize=128m
11 | -XX:MaxPermSize=128m
12 | -XX:+UseParallelOldGC
13 | -XX:+HeapDumpOnOutOfMemoryError
14 | -XX:HeapDumpPath=/opt/dump
15 | -XX:+PrintGCDetails
16 | -XX:+PrintGCDateStamps
17 | -Xloggc:/opt/dump/heap_trace_payment.txt
18 | -XX:NewSize=512m -XX:MaxNewSize=512m
19 | ```
20 |
--------------------------------------------------------------------------------
/jvm/jvm-gc-parallel-scavenge.md:
--------------------------------------------------------------------------------
1 | # Parallel Scavenge 垃圾收集器
2 |
3 | 关键字:
4 |
5 | - -XX:MaxGCPauseMillis
6 | - -XX:GCTimeRatio
7 | - 垃圾分代收集
8 | - 夸代引用
9 |
10 |
11 | ## 概述
12 |
13 | 从下面几个方面去理解Parallel Scavenge回收。
14 |
15 | - 内存布局
16 | - 内存分配
17 | - 内存回收
18 | - 关键技术+实现细节
19 |
20 | ## 内存布局
21 |
22 | ## 内存分配
23 |
24 | ## 内存回收
25 |
26 | ## 关键技术
27 |
--------------------------------------------------------------------------------
/jvm/jvm-javassist.md:
--------------------------------------------------------------------------------
1 | # javassist
2 |
--------------------------------------------------------------------------------
/jvm/jvm-jmm.md:
--------------------------------------------------------------------------------
1 | # JMM
2 |
3 | - Java 内存模型的抽象
--------------------------------------------------------------------------------
/jvm/jvm-klass.md:
--------------------------------------------------------------------------------
1 | # klass
2 |
3 |
4 | ## Links
5 |
6 | - [Java对象的内存布局](https://www.cnblogs.com/jajian/p/13681781.html)
--------------------------------------------------------------------------------
/jvm/jvm-opcode.md:
--------------------------------------------------------------------------------
1 | # Opcode Mnemonics by Opcode
2 |
3 | 
4 |
5 | - [https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-7.html](https://docs.oracle.com/javase/specs/jvms/se8/html/jvms-7.html)
--------------------------------------------------------------------------------
/jvm/jvm-switch-case.md:
--------------------------------------------------------------------------------
1 | # switch case 的字节码实现
2 |
3 | - [https://stackoverflow.com/questions/10287700/difference-between-jvms-lookupswitch-and-tableswitch](https://stackoverflow.com/questions/10287700/difference-between-jvms-lookupswitch-and-tableswitch)
--------------------------------------------------------------------------------
/jvm/jvm-tlab.md:
--------------------------------------------------------------------------------
1 | # JVM TLAB
2 |
3 | - Thread Local AllocationBuffer
4 |
5 |
6 | ## Links
7 |
8 | - [https://www.cnblogs.com/myseries/p/12884249.html](https://www.cnblogs.com/myseries/p/12884249.html)
9 |
--------------------------------------------------------------------------------
/jvm/readme.md:
--------------------------------------------------------------------------------
1 | # jvm
2 |
3 | JVM 相关的笔记
4 |
5 | - [HotSopt实战](HotSopt实战/readme.md)
6 | - [深入理解Java虚拟机](深入理解Java虚拟机/readme.md)
7 | - [深入理解jvm字节码](深入理解jvm字节码/readme.md)
8 | - [Java并发编程的艺术](Java并发编程的艺术/readme.md)
--------------------------------------------------------------------------------
/jvm/深入JVM虚拟机-JVM-G1算法与实现/chapter-04.md:
--------------------------------------------------------------------------------
1 | # 第 4 章 软实时性
2 |
3 | -
4 | -
5 |
6 | ## 用户的需求
7 |
8 | 在 G1GC 中,用户可以设置如下 3 个值。
9 |
10 | - ①可用内存上限
11 | - ② GC 暂停时间上限
12 | - ③ GC 单位时间
13 |
14 | 设置①是为了避免内存被过度占用。就算是为了实现软实时性,也不能让 GC 完全占用内存。
15 |
16 | ②指定的是执行 GC 所导致的 mutator 的最大暂停时间。这个最大暂停时间并不包含 G1GC 的并发处理时间。在多处理器环境下,G1GC 的并发处理时间可以理解成平均分配给 mutator 的负载。
17 |
18 |
--------------------------------------------------------------------------------
/jvm/深入JVM虚拟机-JVM-G1算法与实现/chapter-09.md:
--------------------------------------------------------------------------------
1 | # 第 9 章 堆结构
2 |
3 | - Universe 类
4 | - Universe::_collectedHeap
5 |
--------------------------------------------------------------------------------
/jvm/深入JVM虚拟机-JVM-G1算法与实现/chapter-11.md:
--------------------------------------------------------------------------------
1 | # 第 11 章 对象结构
2 |
3 | - oopDesc 类
4 | - KlassOop
5 | - markOopDesc
6 | - 前向指针 forwardPtrMark
7 |
--------------------------------------------------------------------------------
/jvm/深入JVM虚拟机-JVM-G1算法与实现/chapter-13.md:
--------------------------------------------------------------------------------
1 | # 第 13 章 线程的互斥处理
2 |
3 |
4 | - 互斥量 mutex
5 | - mutex 由 mutal exclusion(互斥条件)合成而来的。
6 | - monitor 监视器
7 | - 条件变量(condition variable)
8 | - Java 中提供的就是这种不带条件变量的简单的监视器。
9 | - _cond是条件变量,_mutex是互斥量
10 | - mutex.hpp
11 | - Mutex 类
12 | - Monitor 类
13 | - MutexLocker 类
--------------------------------------------------------------------------------
/jvm/深入剖析Java虚拟机源码剖析与实例详解-基础卷-马智/chapter-01.md:
--------------------------------------------------------------------------------
1 | # 第1章 认识HotSpot VM
2 |
3 |
4 | - pthread_create
5 | - pthread_t
6 | - JNIEnv
7 | - CallStaticVoidMethod
8 |
9 |
10 | ## Links
11 |
12 | - 编译+调试 JVM 源码,可参考 [https://juejin.cn/post/6982024331467423774](https://juejin.cn/post/6982024331467423774)
13 |
--------------------------------------------------------------------------------
/jvm/深入理解Java虚拟机/chapter-04.md:
--------------------------------------------------------------------------------
1 | # 第 4 章 虚拟机性能监控、故障处理工具
2 |
3 | - jps
4 | - jstat
5 | - jinfo
6 | - jmap
7 | - jstack
8 | - jhat
9 | - JHSDB
10 | - JConsole
11 | - Java Mission Control
12 | - VisualVM
13 |
14 |
--------------------------------------------------------------------------------
/jvm/深入理解Java虚拟机/chapter-05.md:
--------------------------------------------------------------------------------
1 | # 第5章 调优案例分析与实战
2 |
--------------------------------------------------------------------------------
/jvm/深入理解Java虚拟机/chapter-06.md:
--------------------------------------------------------------------------------
1 | # 第 6 章 类文件结构
2 |
--------------------------------------------------------------------------------
/jvm/深入理解Java虚拟机/chapter-08.md:
--------------------------------------------------------------------------------
1 | # 第8章 虚拟机字节码执行引擎
2 |
--------------------------------------------------------------------------------
/jvm/深入理解Java虚拟机/chapter-09.md:
--------------------------------------------------------------------------------
1 | # 第 9 章 类加载及执行子系统的案例与实战
2 |
3 | - Tomcat 的类加载机制
--------------------------------------------------------------------------------
/jvm/深入理解Java虚拟机/chapter-10.md:
--------------------------------------------------------------------------------
1 | # 第 10 章 前端编译与优化
2 |
3 | - Javac 编译器
4 | - Java 语法糖
5 | - 注解处理器
6 | - lombok
7 |
--------------------------------------------------------------------------------
/jvm/深入理解Java虚拟机/chapter-11.md:
--------------------------------------------------------------------------------
1 | # 第 11 章 后端编译与优化
2 |
3 | - Graal 编译器
4 | - JVMCI JVMCI 编译器接口
5 |
6 | ## Links
7 |
8 | - [https://www.graalvm.org/](https://www.graalvm.org/)
9 | - [https://github.com/oracle/graal](https://github.com/oracle/graal)
10 | - [GraalVM:微服务时代的 Java](https://zhuanlan.zhihu.com/p/137836206)
11 |
--------------------------------------------------------------------------------
/jvm/深入理解jvm字节码/01.md:
--------------------------------------------------------------------------------
1 | # 第一章 深入剖析class文件结构
2 |
--------------------------------------------------------------------------------
/jvm/深入理解jvm字节码/03.md:
--------------------------------------------------------------------------------
1 | # 第三章 字节码进阶
2 |
3 | ## 知识储备
4 |
5 | - 会使用 `javac` & `javap` 编译和查看`class`文件
6 | - 了解 `class` 文件的结构,如:常量池
7 | - 能读懂简单的字节码指令,如: `iadd`,`istore`,`iaload`
8 | - 知道下面字节码指令的区别: `invokedynamic`,`invokeinterface`,`invokespecial`,`invokestatic`,`invokevirtual`
9 | - 知道 `栈`,`栈帧`,`操作数栈`,`动态链接`的概念
10 | - invokedynamic
11 |
--------------------------------------------------------------------------------
/kafka/readme.md:
--------------------------------------------------------------------------------
1 | # Kafka
2 |
3 |
--------------------------------------------------------------------------------
/kafka/深入理解kafka-核心设计与实践原理/images/consumer-offset.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/kafka/深入理解kafka-核心设计与实践原理/images/consumer-offset.png
--------------------------------------------------------------------------------
/kafka/深入理解kafka-核心设计与实践原理/images/kafka-consumer-group.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/kafka/深入理解kafka-核心设计与实践原理/images/kafka-consumer-group.png
--------------------------------------------------------------------------------
/kafka/深入理解kafka-核心设计与实践原理/images/kafka-producer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/kafka/深入理解kafka-核心设计与实践原理/images/kafka-producer.png
--------------------------------------------------------------------------------
/kafka/深入理解kafka-核心设计与实践原理/readme.md:
--------------------------------------------------------------------------------
1 | # 深入理解kafka-核心设计与实践原理
2 |
3 | - [第一章 初识 Kafka](chapter-01.md)
4 | - [第2章 生产者](chapter-02.md)
5 |
--------------------------------------------------------------------------------
/kubernetes/images/k8s-bin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/kubernetes/images/k8s-bin.png
--------------------------------------------------------------------------------
/kubernetes/images/k8s-controller.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/kubernetes/images/k8s-controller.png
--------------------------------------------------------------------------------
/kubernetes/images/k8s-master.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/kubernetes/images/k8s-master.png
--------------------------------------------------------------------------------
/kubernetes/images/k8s-node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/kubernetes/images/k8s-node.png
--------------------------------------------------------------------------------
/kubernetes/images/k8s-tech.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/kubernetes/images/k8s-tech.png
--------------------------------------------------------------------------------
/kubernetes/images/k8s.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/kubernetes/images/k8s.png
--------------------------------------------------------------------------------
/kubernetes/images/minikube.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/kubernetes/images/minikube.png
--------------------------------------------------------------------------------
/kubernetes/kubenetes-dashboard.md:
--------------------------------------------------------------------------------
1 | # dashboard
2 |
3 | - [https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/](https://kubernetes.io/docs/tasks/access-application-cluster/web-ui-dashboard/)
4 |
5 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-configmap.md:
--------------------------------------------------------------------------------
1 | # configmap
2 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-controller.md:
--------------------------------------------------------------------------------
1 | # kubernetes controller
2 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-crd.md:
--------------------------------------------------------------------------------
1 | # crd
2 |
3 | Custom resources definition
4 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-cri.md:
--------------------------------------------------------------------------------
1 | # container
2 |
3 | 容器技术
4 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-daemon-set.md:
--------------------------------------------------------------------------------
1 | # DaemonSet
2 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-deployment.md:
--------------------------------------------------------------------------------
1 | # deployment
2 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-helm.md:
--------------------------------------------------------------------------------
1 | # helm
2 |
3 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-infromer.md:
--------------------------------------------------------------------------------
1 | # informer
2 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-job.md:
--------------------------------------------------------------------------------
1 | # job
2 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-lables.md:
--------------------------------------------------------------------------------
1 | # Labels
2 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-pod.md:
--------------------------------------------------------------------------------
1 | # pod
2 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-probe-spec.md:
--------------------------------------------------------------------------------
1 | # probe spec
2 |
3 | - liveness
4 | - readiness
5 |
6 | ## 调试工具
7 |
8 | Telepresence
9 | port-forward
10 | kubectl-debug
11 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-pv-pvc.md:
--------------------------------------------------------------------------------
1 | # pv and pvc
2 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-runtime-class.md:
--------------------------------------------------------------------------------
1 | # RuntimeClass
2 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-statefuleset.md:
--------------------------------------------------------------------------------
1 | # StateFulSet
2 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes-volume.md:
--------------------------------------------------------------------------------
1 | # volume
2 |
3 | - emptyDir
4 | - hostPath
5 | - gcePersistentDisk
6 | - awsElasticBlockStore
7 | - NFS
8 |
9 | ## pv
10 |
11 | ## pvc
12 |
--------------------------------------------------------------------------------
/kubernetes/kubernetes.md:
--------------------------------------------------------------------------------
1 | # kubernetes
2 |
3 | Kubernetes provides you with
4 |
5 | - Service discovery and load balancing
6 | - Storage orchestration
7 | - Automated rollouts and rollbacks
8 | - Automatic bin packing
9 | - Self-healin
10 | - Secret and configuration management
11 |
12 | ## Tech
13 |
14 | 
15 |
--------------------------------------------------------------------------------
/kubernetes/kuboard.md:
--------------------------------------------------------------------------------
1 | # kuboard
2 |
3 | https://github.com/eip-work/kuboard-press
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/001-linux-env-build.md:
--------------------------------------------------------------------------------
1 | # 第1章 Linux设备驱动概述及开发环境构建
2 |
3 |
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/002-linux-base.md:
--------------------------------------------------------------------------------
1 | # 第2章 驱动设计的硬件基础
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/021-linux-debug.md:
--------------------------------------------------------------------------------
1 | # 第21章 Linux设备驱动的调试
2 |
3 | - P1628
4 | - printk
5 | - __log_buf
6 | - dmesg
7 | - /proc/kmsg
8 | - pr_debug
9 | - __func__
10 | - __LINE__
11 | - __FILE__
12 | - /proc/sys/kernel/printk
13 | - /proc/meminfo
14 | - /dev/globalmem
15 | - BUG_ON()和WARN_ON()
16 | - panic
17 | - WARN_ON
18 | - strace
19 | - KGDB
20 |
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/006-linux-file_operations.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/006-linux-file_operations.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/008-linux-select-pool.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/008-linux-select-pool.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/008-linux-wait-queue-wait-queue-head-t.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/008-linux-wait-queue-wait-queue-head-t.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/009-linux-async-sig.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/009-linux-async-sig.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/009-linux-eagain-sync-io.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/009-linux-eagain-sync-io.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/010-linux-top-half.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/010-linux-top-half.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/011-linux-32-mem.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/011-linux-32-mem.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/011-linux-dma-cache-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/011-linux-dma-cache-2.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/011-linux-dma-cache.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/011-linux-dma-cache.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/011-linux-io-port-flow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/011-linux-io-port-flow.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/011-linux-io-port.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/011-linux-io-port.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/011-linux-io.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/011-linux-io.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/011-linux-mem.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/011-linux-mem.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/011-linux-virtual-mem.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/011-linux-virtual-mem.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/011-mmu-arm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/011-mmu-arm.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/011-mmu-table.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/011-mmu-table.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/012-linux-deivce-layer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/012-linux-deivce-layer.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/012-linux-device-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/012-linux-device-1.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/012-linux-framebuffer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/012-linux-framebuffer.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/012-linux-tty.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/012-linux-tty.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/013-linux-bio-vec.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/013-linux-bio-vec.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/013-linux-io-schedule.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/013-linux-io-schedule.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/014-linux-net-device-layer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/014-linux-net-device-layer.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/014-linux-net-sk-buff.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/014-linux-net-sk-buff.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/015-linux-ic2-arch.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/015-linux-ic2-arch.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/016-linux-sub-point.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/016-linux-sub-point.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/016-linux-usb-arch.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/016-linux-usb-arch.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/017-linux-i2c-usb-spi.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/017-linux-i2c-usb-spi.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/018-linux-dts-arch.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/018-linux-dts-arch.png
--------------------------------------------------------------------------------
/linux/Linux设备驱动开发详解/images/019-linux-power-arch.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/linux/Linux设备驱动开发详解/images/019-linux-power-arch.png
--------------------------------------------------------------------------------
/linux/linux-fork.md:
--------------------------------------------------------------------------------
1 | # Fork
2 |
3 | ## Links
4 |
5 | - [fork的原理及实现](https://zhuanlan.zhihu.com/p/36872365)
6 | - [https://man7.org/linux/man-pages/man2/fork.2.html](https://man7.org/linux/man-pages/man2/fork.2.html)
--------------------------------------------------------------------------------
/linux/readme.md:
--------------------------------------------------------------------------------
1 | # Linux
2 |
3 | - [cron](https://tecadmin.net/crontab-in-linux-with-20-examples-of-cron-schedule/)
--------------------------------------------------------------------------------
/mac/readme.md:
--------------------------------------------------------------------------------
1 | # mac
2 |
3 | Mac常用的命令
4 |
5 | - [Mac查询网卡信息](https://www.jianshu.com/p/d5c0c5726cb0)
6 |
7 | ```sh
8 | lsof -i tcp:8080 # 查询端口信息
9 | brew install autoconf
10 | ```
11 |
--------------------------------------------------------------------------------
/mathematics/readme.md:
--------------------------------------------------------------------------------
1 | # 数学
2 |
--------------------------------------------------------------------------------
/mathematics/数学之美/chapter-01.md:
--------------------------------------------------------------------------------
1 | # 01 文字和语言 vs 数学信息
2 |
--------------------------------------------------------------------------------
/mathematics/数学之美/chapter-02.md:
--------------------------------------------------------------------------------
1 | # 02 自然语言处理-从规则到统计
2 |
--------------------------------------------------------------------------------
/mathematics/数学之美/chapter-03.md:
--------------------------------------------------------------------------------
1 | # 03 统计语言模型
2 |
--------------------------------------------------------------------------------
/mathematics/数学之美/chapter-12.md:
--------------------------------------------------------------------------------
1 | # 第12章 地图和本地搜索的最基本技术 有限状态机和动态规划
2 |
3 | - 地址识别技术 才有有限状态机
4 | - 程序语言编译器
5 | - 基于概率的有限状态机
6 | - 全球导航和动态规划 Dyanmic Programming
7 | - ( Weighted Finite State Transducer, 简称 WFST ) 有限状态传感器
8 | -
9 |
10 | ## Dyanmic Programming
11 |
12 | 所有的导航系统采用的都是动态规划的办法,这里面的Programming一词在数学上的含义是“规划”,不是计算机里的“编程”。
--------------------------------------------------------------------------------
/mathematics/数学之美/chapter-13.md:
--------------------------------------------------------------------------------
1 | # 第13章Google AK-47的设计者 阿米特·辛格博士
2 |
3 | - 阿米特·辛格博士
--------------------------------------------------------------------------------
/mathematics/数学之美/chapter-14.md:
--------------------------------------------------------------------------------
1 | # 第14章余弦定理和新闻的分类
2 |
3 | - TF-IDF 单文本词汇频率/逆文本频率值 TF-IDF
4 | - 余弦定理
5 | - 新闻分类
6 | - 数值分析
--------------------------------------------------------------------------------
/mathematics/数学之美/chapter-15.md:
--------------------------------------------------------------------------------
1 | # 第15章矩阵运算和文本处理中的两个分类问题
2 |
3 | - 线性代数
4 | - 线性方程
5 | - 矩阵
6 | - 特征值
7 | - 文本和词汇的矩阵
8 | - 类聚问题
9 | - 用矩阵运算中的奇异值分解(Singular Value Decomposition,简称SVD)
--------------------------------------------------------------------------------
/mathematics/数学之美/readme.md:
--------------------------------------------------------------------------------
1 | # 数学之美
2 |
3 | > 前言
4 |
5 | - 思维方法
6 | - 归纳 抽象
7 | - WWW的发明人蒂姆.伯纳斯.李谈到设计原理时说过:`简单性和模块化是软件.工程的基石;分布式和容错性是互联网的生命。`
8 | - `有正确设计思想方法的技术`未必能够成功,因为还有非技术的因素;但`没有正确设计思想方法的技术一定失败`,无一例外。
9 | - 经过几千年的抽象化,大家头脑里能想象的数学只剩下数字、符号、公式和定理了
10 |
11 |
--------------------------------------------------------------------------------
/micro-services/distributed-tx.md:
--------------------------------------------------------------------------------
1 | # 分布式事务
2 |
3 | - [TCC 两阶段异步补偿型](https://mp.weixin.qq.com/s/O_M9nWZNDTq1NrM5l-if_Q)
4 | - [XA事务](https://yq.aliyun.com/articles/283392)
--------------------------------------------------------------------------------
/micro-services/service-discovery.md:
--------------------------------------------------------------------------------
1 | # 服务发现
2 |
3 | ## Links
4 |
5 | - [服务发现](https://icyfenix.cn/distribution/connect/service-discovery.html)
--------------------------------------------------------------------------------
/mybatis/images/DataSourceTransactionManager.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/mybatis/images/DataSourceTransactionManager.png
--------------------------------------------------------------------------------
/mybatis/images/SqlSessionFactoryBean.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/mybatis/images/SqlSessionFactoryBean.png
--------------------------------------------------------------------------------
/mybatis/images/mybatis-exe.draw.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/mybatis/images/mybatis-exe.draw.png
--------------------------------------------------------------------------------
/mybatis/images/mybatis-mapper-factory-bean.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/mybatis/images/mybatis-mapper-factory-bean.png
--------------------------------------------------------------------------------
/mybatis/images/mybatis-mapper-scanner-configurer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/mybatis/images/mybatis-mapper-scanner-configurer.png
--------------------------------------------------------------------------------
/mybatis/images/mybatis-ms.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/mybatis/images/mybatis-ms.png
--------------------------------------------------------------------------------
/mybatis/images/mybatis.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/mybatis/images/mybatis.png
--------------------------------------------------------------------------------
/mybatis/mybatis-key-generator.md:
--------------------------------------------------------------------------------
1 | # KeyGenerator
2 |
3 | - Jdbc3KeyGenerator
4 | - NoKeyGenerator
5 | - SelectKeyGenerator
6 |
--------------------------------------------------------------------------------
/mybatis/mybatis-pooled-data-source.md:
--------------------------------------------------------------------------------
1 | # PooledDataSource
2 |
3 | ## pushConnection
4 |
5 | ## popConnection
6 |
7 | ## pingConnection
8 |
--------------------------------------------------------------------------------
/mybatis/mybatis-xml-statement-builder.md:
--------------------------------------------------------------------------------
1 | # XMLStatementBuilder
2 |
3 | > 解析 `xml` 中的 `sql` 语句
4 |
--------------------------------------------------------------------------------
/mysql/MySQL技术内幕(InnoDB存储引擎)第2版/chapter-01.md:
--------------------------------------------------------------------------------
1 | # 第1章 MySQL体系结构和存储引擎
2 |
3 | - InnoDB 存储引擎
4 | - MyISAM存储引擎
5 | - NDB 存储弓|擎
6 | - Memory 存储引擎
7 | - Archive 存储引擎
8 | - Federated 存储引擎
9 | - Maria 存储引擎
10 |
--------------------------------------------------------------------------------
/mysql/MySQL技术内幕(InnoDB存储引擎)第2版/chapter-08.md:
--------------------------------------------------------------------------------
1 | # 第8章 备份与恢复
2 |
--------------------------------------------------------------------------------
/mysql/MySQL技术内幕(InnoDB存储引擎)第2版/chapter-09.md:
--------------------------------------------------------------------------------
1 | # 第9章 性能调优
2 |
--------------------------------------------------------------------------------
/mysql/MySQL技术内幕(InnoDB存储引擎)第2版/chapter-10.md:
--------------------------------------------------------------------------------
1 | # 第10章 InnoDB 存储引擎源代码的编译和调试
2 |
--------------------------------------------------------------------------------
/mysql/MySQL是怎么运行的/images/innodb-architecture.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/mysql/MySQL是怎么运行的/images/innodb-architecture.png
--------------------------------------------------------------------------------
/mysql/MySQL是怎么运行的/mysql-01.md:
--------------------------------------------------------------------------------
1 | # 第1章 装作自己是个小白-重新认识MySQL
2 |
--------------------------------------------------------------------------------
/mysql/MySQL是怎么运行的/mysql-02.md:
--------------------------------------------------------------------------------
1 | # 第2章 MySQL的调控按钮-启动选项和系统变量
--------------------------------------------------------------------------------
/mysql/MySQL是怎么运行的/mysql-03.md:
--------------------------------------------------------------------------------
1 | # 第3章 乱码的前世今生-字符集和比较规则
2 |
3 | - utf8mb3 :阉割过的 utf8 字符集,只使用1~3个字节表示字符。
4 | - utf8mb4 :正宗的 utf8 字符集,使用1~4个字节表示字符。
5 | - 字符集和比较规则
6 | - 字符集 指的是某个字符范围的编码规则。
7 | - 比较规则 是针对某个字符集中的字符比较大小的一种规则。
8 | - SHOW CHARSET;
9 | - SHOW COLLATION LIKE 'utf8\_%';
10 | - character_set_server 表示服务器级别的字符集, collation_server 表示服务器级别的比较规则
11 | - character_set_client
12 | - character_set_connection
13 |
--------------------------------------------------------------------------------
/mysql/MySQL是怎么运行的/mysql-14.md:
--------------------------------------------------------------------------------
1 | # 第14章 不好看就要多整容-MySQL基于规则的优化(内含关于子查询优化二三事儿)
2 |
3 | - 查询重写
4 | - 重写规则
5 | - 条件化简
6 | - 移除不必要的括号
7 | - 量传递(constant_propagation)
8 | - 等值传递(equality_propagation)
9 | - 移除没用的条件(trivial_condition_removal)
10 | - 表达式计算
11 | - HAVING子句和WHERE子句的合并
--------------------------------------------------------------------------------
/mysql/MySQL是怎么运行的/mysql-16.md:
--------------------------------------------------------------------------------
1 | # 第16章 查询优化的百科全书-Explain详解(下)
--------------------------------------------------------------------------------
/mysql/MySQL是怎么运行的/mysql-17.md:
--------------------------------------------------------------------------------
1 | # 第17章 神兵利器-optimizer trace表的神器功效
--------------------------------------------------------------------------------
/mysql/MySQL是怎么运行的/mysql-26.md:
--------------------------------------------------------------------------------
1 | # 第26章 写作本书时用到的一些重要的参考资料
2 |
--------------------------------------------------------------------------------
/mysql/images/innodb-architecture.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/mysql/images/innodb-architecture.png
--------------------------------------------------------------------------------
/mysql/images/innodb-buffer-pool-list.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/mysql/images/innodb-buffer-pool-list.png
--------------------------------------------------------------------------------
/mysql/images/innodb-data-struct.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/mysql/images/innodb-data-struct.png
--------------------------------------------------------------------------------
/mysql/mysql-Innodb-row-formats.md:
--------------------------------------------------------------------------------
1 | # InnoDB Row Formats
2 |
3 | - [https://dev.mysql.com/doc/refman/5.7/en/innodb-row-format.html](https://dev.mysql.com/doc/refman/5.7/en/innodb-row-format.html)
4 |
--------------------------------------------------------------------------------
/mysql/mysql-cmd.md:
--------------------------------------------------------------------------------
1 | # mysql 常用的命令
2 |
3 | ## table
4 |
5 | ```sql
6 | # 查询表的状态
7 | show table status like 'user';
8 | show table status;
9 |
10 | show processlist;
11 |
12 | show variables like 'transaction_isolation';
13 | ```
14 |
15 |
16 | select * from information_schema.innodb_trx where TIME_TO_SEC(timediff(now(),trx_started))>60
--------------------------------------------------------------------------------
/mysql/mysql-data-type.md:
--------------------------------------------------------------------------------
1 | # MySQL 数据类型
2 |
3 | 1. 假设某个字符集中表示一个字符最多需要使用的字节数为W ,也就是使用SHOW CHARSET 语句的结果中的Maxlen 列,比方说utf8 字符集中的W 就是3 , gbk 字符集中的W 就是2 , ascii 字符集中的W 就是
4 | 2. 对于变长类型VARCHAR(M) 来说,这种类型表示能存储最多M 个字符(注意是字符不是字节),所以这个类型能表示的字符串最多占用的字节数就是M×W 。
5 | 3. 假设它实际存储的字符串占用的字节数是L
6 |
--------------------------------------------------------------------------------
/mysql/mysql-group-by.md:
--------------------------------------------------------------------------------
1 | # group by
2 |
3 | ## group by 查询优化
4 |
5 | - `group by`进行分组查询的时候,无法使用索引的时候,会用到`临时表` 和`文件排序`,这两种情况都是可以优化的
6 | - `group by`结果会自动进行排序,可以使用`order by null`禁止排序
7 |
--------------------------------------------------------------------------------
/mysql/mysql-innodb-locking.md:
--------------------------------------------------------------------------------
1 | # InnoDB Locking
2 |
3 | - [https://dev.mysql.com/doc/refman/5.7/en/innodb-locking.html](https://dev.mysql.com/doc/refman/5.7/en/innodb-locking.html)
--------------------------------------------------------------------------------
/mysql/mysql-join.md:
--------------------------------------------------------------------------------
1 | # join
2 |
3 | - [join](http://www.cnblogs.com/BeginMan/p/3754322.html)
4 |
--------------------------------------------------------------------------------
/mysql/mysql-temporary-table.md:
--------------------------------------------------------------------------------
1 |
2 | # MySQL 创建临时表的案例
3 |
4 | ## 1 use join
5 |
6 | [Link](https://dev.mysql.com/doc/refman/5.7/en/where-optimization.html)
7 |
8 | > If there is an ORDER BY clause and a different GROUP BY clause, or if the ORDER BY or GROUP BY contains columns from tables other than the first table in the join queue, a temporary table is created.
9 |
10 | ## 2
11 |
--------------------------------------------------------------------------------
/mysql/mysql-tokudb.md:
--------------------------------------------------------------------------------
1 | # tokudb
2 |
3 | 一个 mysql 存储引擎,支持 TB 数据,使用 fractal tree 数据结构
4 |
--------------------------------------------------------------------------------
/nacos/images/nacos-arch.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/nacos/images/nacos-arch.png
--------------------------------------------------------------------------------
/nacos/nacos-distro.md:
--------------------------------------------------------------------------------
1 | # Distro 协议
2 |
--------------------------------------------------------------------------------
/nacos/nacos-naming-factory.md:
--------------------------------------------------------------------------------
1 | # NamingFactory
2 |
3 | ```java
4 | NamingService naming = NamingFactory.createNamingService(System.getProperty("serveAddr"));
5 | ```
--------------------------------------------------------------------------------
/nacos/nacos-naming-service.md:
--------------------------------------------------------------------------------
1 | # NamingService
2 |
3 | ```java
4 | NamingService naming = NamingFactory.createNamingService(System.getProperty("serveAddr"));
5 | naming.registerInstance("nacos.test.3", "11.11.11.11", 8888, "TEST1");
6 | ```
--------------------------------------------------------------------------------
/nacos/nacos-spring.md:
--------------------------------------------------------------------------------
1 | # Nacos Spring
2 |
3 | Nacos 快速的集成 Spring
4 |
5 | - [https://github.com/nacos-group/nacos-spring-project](https://github.com/nacos-group/nacos-spring-project)
6 | - [https://nacos.io/zh-cn/docs/nacos-spring.html](https://nacos.io/zh-cn/docs/nacos-spring.html)
7 |
--------------------------------------------------------------------------------
/nacos/nacos.md:
--------------------------------------------------------------------------------
1 | # Nacos
2 |
3 | - [Nacos](readme.md)
4 |
5 | ## 产品对比
6 |
7 | - Eureak
8 | - Consul
9 | - Zookeeper
10 | - CoreDNS
11 |
12 | ## Links
13 |
14 | - [阿里巴巴为什么不用 ZooKeeper 做服务发现](https://mp.weixin.qq.com/s?__biz=MjM5MDE0Mjc4MA==&mid=2651007830&idx=1&sn=7382412cd4a2243b34f69c3cf4aa5a20&scene=21)
--------------------------------------------------------------------------------
/netty/images/Bootstrap.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/Bootstrap.png
--------------------------------------------------------------------------------
/netty/images/ChannelHandlerContext.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/ChannelHandlerContext.png
--------------------------------------------------------------------------------
/netty/images/ChannelHandlers.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/ChannelHandlers.png
--------------------------------------------------------------------------------
/netty/images/DefaultChannelPromise.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/DefaultChannelPromise.png
--------------------------------------------------------------------------------
/netty/images/EventExecutorGroup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/EventExecutorGroup.png
--------------------------------------------------------------------------------
/netty/images/EventLoop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/EventLoop.png
--------------------------------------------------------------------------------
/netty/images/FullHttpRequest.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/FullHttpRequest.png
--------------------------------------------------------------------------------
/netty/images/FullHttpResponse.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/FullHttpResponse.png
--------------------------------------------------------------------------------
/netty/images/Interface-EventLoop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/Interface-EventLoop.png
--------------------------------------------------------------------------------
/netty/images/LengthFieldBasedFrameDecoder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/LengthFieldBasedFrameDecoder.png
--------------------------------------------------------------------------------
/netty/images/MarshallingDecoder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/MarshallingDecoder.png
--------------------------------------------------------------------------------
/netty/images/MarshallingEncoder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/MarshallingEncoder.png
--------------------------------------------------------------------------------
/netty/images/NioEventLoop.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/NioEventLoop.png
--------------------------------------------------------------------------------
/netty/images/NioEventLoopGroup.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/NioEventLoopGroup.png
--------------------------------------------------------------------------------
/netty/images/NioServerSocketChannel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/NioServerSocketChannel.png
--------------------------------------------------------------------------------
/netty/images/NioSocketChannel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/NioSocketChannel.png
--------------------------------------------------------------------------------
/netty/images/ObjectDecoder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/ObjectDecoder.png
--------------------------------------------------------------------------------
/netty/images/ObjectEncoder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/ObjectEncoder.png
--------------------------------------------------------------------------------
/netty/images/PooledByteBufAllocator.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/PooledByteBufAllocator.png
--------------------------------------------------------------------------------
/netty/images/ProtobufDecoder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/ProtobufDecoder.png
--------------------------------------------------------------------------------
/netty/images/ProtobufEncoder.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/ProtobufEncoder.png
--------------------------------------------------------------------------------
/netty/images/ServerBootstrap.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/ServerBootstrap.png
--------------------------------------------------------------------------------
/netty/images/SimpleChannelInboundHandler.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/SimpleChannelInboundHandler.png
--------------------------------------------------------------------------------
/netty/images/UnpooledByteBufAllocator.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/UnpooledByteBufAllocator.png
--------------------------------------------------------------------------------
/netty/images/channel-adapter.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/channel-adapter.png
--------------------------------------------------------------------------------
/netty/images/channel-context.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/channel-context.png
--------------------------------------------------------------------------------
/netty/images/channel-state.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/channel-state.png
--------------------------------------------------------------------------------
/netty/images/components.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/components.png
--------------------------------------------------------------------------------
/netty/images/eventLoop-and-hannel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/eventLoop-and-hannel.png
--------------------------------------------------------------------------------
/netty/images/java-nio-selector.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/java-nio-selector.png
--------------------------------------------------------------------------------
/netty/images/netty-4.1-modules.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/netty-4.1-modules.png
--------------------------------------------------------------------------------
/netty/images/netty-DefaultChannelHandlerContext.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/netty-DefaultChannelHandlerContext.png
--------------------------------------------------------------------------------
/netty/images/netty-in-action-channel-pipe-line.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/netty-in-action-channel-pipe-line.png
--------------------------------------------------------------------------------
/netty/images/netty-in-action-components-and-design.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/netty-in-action-components-and-design.png
--------------------------------------------------------------------------------
/netty/images/netty-in-action.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/netty-in-action.png
--------------------------------------------------------------------------------
/netty/images/netty-pipeline-channel.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/netty-pipeline-channel.png
--------------------------------------------------------------------------------
/netty/images/unix-network-1-4-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/netty/images/unix-network-1-4-1.png
--------------------------------------------------------------------------------
/netty/netty-base.md:
--------------------------------------------------------------------------------
1 | # Netty 基础
2 |
--------------------------------------------------------------------------------
/netty/netty-byte-buf-allocator.md:
--------------------------------------------------------------------------------
1 | # ByteBufAllocator
2 |
3 | ## PooledByteBufAllocator
4 |
5 | ## UnpooledByteBufAllocator
6 |
--------------------------------------------------------------------------------
/netty/netty-channel-outbound-buffer.md:
--------------------------------------------------------------------------------
1 | # ChannelOutboundBuffer
2 |
3 | Netty 的缓冲区
4 |
--------------------------------------------------------------------------------
/netty/netty-fast-thread-local.md:
--------------------------------------------------------------------------------
1 | # FastThreadLocal
2 |
3 | `Netty` 中使用 `FastThreadLocal` 对 `ThreadLocal` 进行了优化
4 |
5 | - 1. 替换(优化) hash table
6 | - 2. 解决内存泄漏的方法
7 |
--------------------------------------------------------------------------------
/netty/netty-guid.md:
--------------------------------------------------------------------------------
1 | # user-guide
2 |
3 | - https://netty.io/wiki/user-guide-for-4.x.html
4 | - https://netty.io/wiki/related-articles.html
--------------------------------------------------------------------------------
/netty/netty-mpsc-queue.md:
--------------------------------------------------------------------------------
1 | # MpscQueue
2 |
3 | 多生产者,单消费者 Queue mpsc (multi-producer single consumer queue)
4 |
5 | ## 在 HashedWheelTimer 中的应用
6 |
7 | ```java
8 | // HashedWheelTimer
9 | private final Queue timeouts = PlatformDependent.newMpscQueue();
10 | ```
--------------------------------------------------------------------------------
/netty/netty-pool-chunk.md:
--------------------------------------------------------------------------------
1 | # PoolChunk
2 |
3 | 一个 `PoolChunk` 默认大小是 16M (16777216 字节)
4 |
--------------------------------------------------------------------------------
/netty/netty-pool-thread-cache.md:
--------------------------------------------------------------------------------
1 | # PoolThreadCache
2 |
3 | Netty 的内存池管理
4 |
--------------------------------------------------------------------------------
/netty/netty-read-data.md:
--------------------------------------------------------------------------------
1 | # Netty 读数据
2 |
3 | - [Netty 写数据](source-code-write-data.md)
4 |
--------------------------------------------------------------------------------
/netty/netty-recycler.md:
--------------------------------------------------------------------------------
1 | # Recycler
2 |
--------------------------------------------------------------------------------
/netty/netty-size-classes.md:
--------------------------------------------------------------------------------
1 | # SizeClasses
2 |
3 |
4 | ## Links
5 |
6 | - [SizeClasses](https://blog.csdn.net/ClarenceZero/article/details/113607481)
7 | - [SizeClasses](https://blog.csdn.net/ClarenceZero/article/details/113606573)
8 | - [PoolArena、PoolChunkList、PoolChunk、PoolSubpage 全局视角](https://gorden5566.com/post/1079.html)
9 | - [sizeClasses](https://xie.infoq.cn/article/237a97c55aec6731e295be467)
--------------------------------------------------------------------------------
/netty/netty-write-data.md:
--------------------------------------------------------------------------------
1 | # Netty 写数据
2 |
3 | - [Netty 读数据](source-code-read-data.md)
4 |
5 | 1. ObjectToByte
6 | 2. 分配内存
7 | 3. 写到缓冲区
8 |
--------------------------------------------------------------------------------
/operating-system/0xFF.md:
--------------------------------------------------------------------------------
1 | # 0XF
2 |
3 | byte[] -> int
4 |
5 | byte类型的数字要&0xff再赋值给int类型,其本质原因就是想保持二进制补码的一致性。
6 |
7 | ## Links
8 |
9 | - [byte类型的数字要&0xff再赋值给int类型,其本质原因就是想保持二进制补码的一致性](https://www.cnblogs.com/think-in-java/p/5527389.html)
10 | - [https://www.jianshu.com/p/4cb0e4c361f7](https://www.jianshu.com/p/4cb0e4c361f7)
11 |
12 |
--------------------------------------------------------------------------------
/operating-system/Unix环境高级编程/readmed.md:
--------------------------------------------------------------------------------
1 | # Unix环境高级编程
2 |
3 | - [第12章 高级I/O](unix-chapter-12.md)
--------------------------------------------------------------------------------
/operating-system/assembly/__asm__.md:
--------------------------------------------------------------------------------
1 | # asm 语法
2 |
3 | ## Links
4 |
5 | - [\_\_asm\_\_ 语法](https://www.cnblogs.com/ph829/p/4429093.html)
--------------------------------------------------------------------------------
/operating-system/assembly/汇编语言-基于X86处理器/readme.md:
--------------------------------------------------------------------------------
1 | # 汇编语言-基于X86处理器
2 |
3 | ## 01 基本概念
4 |
5 | ## 02 X86 处理器架构
6 |
7 | ## 03 汇编语言基础
8 |
9 | - 基本语言元素
10 |
11 | ## 资料
12 |
--------------------------------------------------------------------------------
/operating-system/assembly/汇编语言-第三版/demo/1.asm:
--------------------------------------------------------------------------------
1 | assume cs:codesg
2 |
3 | codesg segment
4 |
5 | mov ax,0123H
6 | mov bx,0456H
7 | add ax,bx
8 | add ax,ax
9 | mov ax,4c00H
10 | int 21H
11 |
12 | codesg ends
13 |
14 | end
15 |
--------------------------------------------------------------------------------
/operating-system/assembly/汇编语言-第三版/demo/123X236.asm:
--------------------------------------------------------------------------------
1 | assume cs:cal
2 |
3 | cal segment
4 |
5 | mov ax,0
6 | mov cx,236
7 | s:
8 | add ax,123
9 | loop s
10 |
11 | mov ax,4c00H
12 | int 21H
13 |
14 | cal ends
15 |
16 | end
--------------------------------------------------------------------------------
/operating-system/assembly/汇编语言-第三版/demo/abc.asm:
--------------------------------------------------------------------------------
1 | assume cs:abc
2 |
3 | abc segment
4 |
5 | mov ax,2
6 | add ax,ax
7 | add ax,ax
8 | mov ax,4c00H
9 | int 21H
10 |
11 | abc ends
12 |
13 | end
--------------------------------------------------------------------------------
/operating-system/assembly/汇编语言-第三版/demo/jmp0.asm:
--------------------------------------------------------------------------------
1 | assume cs:jmp0
2 |
3 | jmp0 segment
4 |
5 | s: mov ax,0
6 | jmp short s0
7 | add ax,1
8 | s0:inc ax
9 |
10 | jmp0 ends
11 |
12 | end s
--------------------------------------------------------------------------------
/operating-system/assembly/汇编语言-第三版/demo/offest.asm:
--------------------------------------------------------------------------------
1 | assume cs:offest1
2 |
3 | offest1 segment
4 |
5 | start:mov ax,offset start
6 | inc ax
7 | s:mov ax,offset s
8 |
9 | offest1 ends
10 |
11 | end start
--------------------------------------------------------------------------------
/operating-system/assembly/汇编语言-第三版/demo/p3.asm:
--------------------------------------------------------------------------------
1 | assume cs:p3
2 |
3 | p3 segment
4 |
5 | mov ax,0ffffH
6 | mov ds,ax
7 | mov bx,6
8 | mov al,[bx]
9 | mov ah,0
10 | mov dx,0
11 | mov cx,3
12 |
13 | s:
14 | add dx,ax
15 | loop s
16 |
17 | mov ax,4c00H
18 | int 21H
19 |
20 | p3 ends
21 |
22 | end
--------------------------------------------------------------------------------
/operating-system/assembly/汇编语言-第三版/demo/p4.asm:
--------------------------------------------------------------------------------
1 | assume cs:p4
2 |
3 | p4 segment
4 |
5 | mov ax,0ffffH
6 | mov ds,ax
7 | mov bx,6
8 | mov al,[bx]
9 | mov ah,0
10 | mov dx,0
11 | mov cx,123
12 |
13 | s:
14 | add dx,ax
15 | loop s
16 |
17 | mov ax,4c00H
18 | int 21H
19 |
20 | p4 ends
21 |
22 | end
--------------------------------------------------------------------------------
/operating-system/assembly/汇编语言-第三版/demo/ss0.asm:
--------------------------------------------------------------------------------
1 | assume cs:ss0
2 |
3 | ss0 segment
4 |
5 | s:mov ax,bx
6 | mov si,offset s
7 | mov di,offset s0
8 | mov ax,cs:[si]
9 | mov cs:[di],ax
10 | s0:nop
11 | nop
12 |
13 | ss0 ends
14 |
15 | end s
--------------------------------------------------------------------------------
/operating-system/assembly/汇编语言-第三版/demo/t1.asm:
--------------------------------------------------------------------------------
1 | assume cs:t1
2 |
3 | t1 segment
4 |
5 | mov ax,2000H
6 | mov ss,ax
7 | mov sp,0
8 | add sp,10
9 | pop ax
10 | pop bx
11 | push ax
12 | push bx
13 | pop ax
14 | pop bx
15 |
16 | mov ax,4c00H
17 | int 21H
18 |
19 | t1 ends
20 |
21 | end
--------------------------------------------------------------------------------
/operating-system/binary_bit_byte.md:
--------------------------------------------------------------------------------
1 | # binary
2 |
3 | ## 二进制
4 |
5 | 十进制与二进制互换:
6 | 29=16+8+4+1=b11101
7 | 二进制换十六进制,四位一组:
8 | 111011 = 11'1011 = 0x3b
9 |
10 | ## 补码
11 |
12 | 补码的好处是:
13 |
14 | 1. +0,-0在系统中的表示法是一样的,而原码和反码都做不到。
15 | 2. 负数的运算可以复用正数的加法器,不需要额外的电路。
16 |
--------------------------------------------------------------------------------
/operating-system/bit.md:
--------------------------------------------------------------------------------
1 | # Bit
2 |
3 | - 1 B(字节)=8b(位)
4 | - 1 KB = 1024 B
5 | - 1 MB = 1024 KB
6 | - 1 GB = 1024 MB
7 | - 1 TB = 1024GB
8 |
9 | ## Links
10 |
11 | - [位图-BitMap](https://www.jianshu.com/p/c4c5a00b40db)
12 | - [位运算有什么奇技淫巧?](https://www.zhihu.com/question/38206659)
13 | - [XOR 运算](https://www.ruanyifeng.com/blog/2021/01/_xor.html)
--------------------------------------------------------------------------------
/operating-system/cpu.md:
--------------------------------------------------------------------------------
1 | # CPU
2 |
3 | - CPU 的构造
4 | - CPU 的时钟周期
5 |
--------------------------------------------------------------------------------
/operating-system/demos/malloc_demo.c:
--------------------------------------------------------------------------------
1 |
2 | #include
3 | #include
4 |
5 | int main() {
6 | void *p = malloc(16);
7 | printf("%p\n", p);
8 | free(p);
9 | return 0;
10 | }
--------------------------------------------------------------------------------
/operating-system/fs.md:
--------------------------------------------------------------------------------
1 | # File System
2 |
3 |
4 | ## Links
5 |
6 | - [文件读写](https://mp.weixin.qq.com/s/P0IP6c_qFhuebwdwD8HM7w)
--------------------------------------------------------------------------------
/operating-system/readme.md:
--------------------------------------------------------------------------------
1 | # 操作系统
2 |
3 | ## 虚拟机
4 |
5 | - [垃圾回收算法手册](./垃圾回收算法手册/readme.md)
6 |
7 |
8 | ## Links
9 |
10 | - [字节对齐](https://www.cnblogs.com/clover-toeic/p/3853132.html)
--------------------------------------------------------------------------------
/operating-system/register.md:
--------------------------------------------------------------------------------
1 | # register
2 |
3 | 寄存器
4 |
5 | - (r/e)ip寄存器中的值,指向当前指令的下一条指令
6 |
7 | ## Links
8 |
9 | - [x86寄存器 简介](https://www.cnblogs.com/FrankChen831X/p/10482718.html)
--------------------------------------------------------------------------------
/operating-system/stack.md:
--------------------------------------------------------------------------------
1 | # Stack
2 |
3 | 关键字:
4 |
5 | - 栈的实现
--------------------------------------------------------------------------------
/operating-system/volatile.md:
--------------------------------------------------------------------------------
1 | # volatile
2 |
3 | volatile (底层是各种内存屏障)内存屏障有两个作用:
4 |
5 | 阻止屏障两侧的指令重排序;
6 | 强制把写缓冲区/高速缓存中的脏数据等写回主内存,让缓存中相应的数据失效。
7 |
8 | ## Links
9 |
10 | - [内存屏障](https://www.jianshu.com/p/2ab5e3d7e510)
--------------------------------------------------------------------------------
/operating-system/垃圾回收算法手册/chapter-04.md:
--------------------------------------------------------------------------------
1 | # 第四章 复制式回收
2 |
3 | - 赋值器 mutator
4 |
--------------------------------------------------------------------------------
/operating-system/垃圾回收算法手册/chapter-05.md:
--------------------------------------------------------------------------------
1 | # 第五章 引用计数
2 |
--------------------------------------------------------------------------------
/operating-system/垃圾回收算法手册/chapter-15.md:
--------------------------------------------------------------------------------
1 | # 并发垃圾回收
2 |
3 | - 增量回收 (incremental collection)
4 | - 跟踪对象图中可达对象的变化
--------------------------------------------------------------------------------
/operating-system/垃圾回收算法手册/readme.md:
--------------------------------------------------------------------------------
1 | # 垃圾回收算法手册
2 |
3 | - [第一章 引言](chapter-01.md)
4 | - [第二章 标记-清扫回收](chapter-02.md)
5 | - [第三章 标记-整理回收](chapter-03.md)
6 | - [第四章 复制式回收](chapter-04.md)
7 | - [第五章 引用计数](chapter-05.md)
8 |
9 | ## Links
10 |
11 | - [http://www.gchandbook.org/](http://www.gchandbook.org/)
12 |
--------------------------------------------------------------------------------
/operating-system/深入理解Linux内核/chapter-09.md:
--------------------------------------------------------------------------------
1 | # 第九章 进程地址空间
2 |
3 | - 写时复制
--------------------------------------------------------------------------------
/operating-system/深入理解Linux内核/readme.md:
--------------------------------------------------------------------------------
1 | # 深入理解Linux内核
2 |
3 | 阅读笔记
4 |
5 | - [第二章 内存寻址](chapter-02.md)
6 | - [第八章 内存管理](chapter-08.md)
7 |
8 | ## Links
9 |
10 | - [http://www.kerneltravel.net/](http://www.kerneltravel.net/)
--------------------------------------------------------------------------------
/operating-system/深入理解计算机系统-第三版/chapter-03.md:
--------------------------------------------------------------------------------
1 | # 第三章 程序的机器级表示
2 |
3 |
--------------------------------------------------------------------------------
/operating-system/深入理解计算机系统-第三版/readme.md:
--------------------------------------------------------------------------------
1 | # 深入理解计算机系统 第三版
2 |
3 | - [第一章 计算机系统漫游](chapter-01.md)
4 | - [第二章 信息的表示和处理](chapter-02.md)
5 | - [第三章 程序的机器级表示](chapter-03.md)
6 |
7 | ## 其他
8 |
9 | 如`P72`表示页码
--------------------------------------------------------------------------------
/other/css/readme.md:
--------------------------------------------------------------------------------
1 | # css
2 |
--------------------------------------------------------------------------------
/other/jms/jms-blog.md:
--------------------------------------------------------------------------------
1 | > 博文
2 |
3 | - [jms 教程](http://blog.csdn.net/yuguiyang1990/article/details/12084929)
--------------------------------------------------------------------------------
/other/js/arguments.md:
--------------------------------------------------------------------------------
1 | # arguments
2 |
3 | - [arguments from javascript.info](https://javascript.info/rest-parameters-spread-operator#the-arguments-variable)
--------------------------------------------------------------------------------
/other/js/arrow-function.md:
--------------------------------------------------------------------------------
1 | # Arrow function
2 |
3 | - [arrow-functions](https://javascript.info/arrow-functions)
4 |
--------------------------------------------------------------------------------
/other/js/ast.md:
--------------------------------------------------------------------------------
1 | # AST
2 |
3 | - [Abstract_syntax_tree](https://en.wikipedia.org/wiki/Abstract_syntax_tree)
--------------------------------------------------------------------------------
/other/js/async.md:
--------------------------------------------------------------------------------
1 | # async
2 |
3 | - [async](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/async_function)
--------------------------------------------------------------------------------
/other/js/await.md:
--------------------------------------------------------------------------------
1 | # await
2 |
3 | - [await (mozilla)](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/await)
4 | - [https://javascript.info/async-await](https://javascript.info/async-await)
5 |
--------------------------------------------------------------------------------
/other/js/babel/readme.md:
--------------------------------------------------------------------------------
1 | # Babel
2 |
3 | > Babel is a JavaScript compiler.
4 |
5 | - [https://babeljs.io/](https://babeljs.io/)
6 |
--------------------------------------------------------------------------------
/other/js/constructor.md:
--------------------------------------------------------------------------------
1 | # constructor
--------------------------------------------------------------------------------
/other/js/event-loop.md:
--------------------------------------------------------------------------------
1 | # EventLoop
2 |
3 | - [EventLoop](https://developer.mozilla.org/en-US/docs/Web/JavaScript/EventLoop)
--------------------------------------------------------------------------------
/other/js/export.md:
--------------------------------------------------------------------------------
1 | # export
2 |
3 | - [export](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/export)
4 |
--------------------------------------------------------------------------------
/other/js/extends.md:
--------------------------------------------------------------------------------
1 | # extends
--------------------------------------------------------------------------------
/other/js/flow/flow.md:
--------------------------------------------------------------------------------
1 | # flow
2 |
3 | - [flow](https://flow.org/en/)
4 | - [https://flow.org/en/docs/getting-started/](https://flow.org/en/docs/getting-started/)
5 | - [https://flow.org/en/docs/types/](https://flow.org/en/docs/types/)
6 | - [https://flow.org/en/docs/lang/](https://flow.org/en/docs/lang/)
7 |
--------------------------------------------------------------------------------
/other/js/flow/flowconfig.md:
--------------------------------------------------------------------------------
1 | # flowconfig
2 |
3 | - [https://flow.org/en/docs/config/](https://flow.org/en/docs/config/)
4 |
--------------------------------------------------------------------------------
/other/js/flow/types.md:
--------------------------------------------------------------------------------
1 | # types
2 |
3 | - [https://flow.org/en/docs/types/](https://flow.org/en/docs/types/)
4 |
--------------------------------------------------------------------------------
/other/js/generator.md:
--------------------------------------------------------------------------------
1 | # Generator
2 |
3 | - [https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Generator](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Generator)
--------------------------------------------------------------------------------
/other/js/import.md:
--------------------------------------------------------------------------------
1 | # import
2 |
3 | - [import](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import)
4 |
--------------------------------------------------------------------------------
/other/js/map.md:
--------------------------------------------------------------------------------
1 | # Map
2 |
3 | - [Map](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Map)
--------------------------------------------------------------------------------
/other/js/method.md:
--------------------------------------------------------------------------------
1 | # method
2 |
3 | - [Method definitions](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Method_definitions)
4 |
--------------------------------------------------------------------------------
/other/js/nodejs/export.md:
--------------------------------------------------------------------------------
1 | # export
2 |
3 | [export statement](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/export)
4 |
--------------------------------------------------------------------------------
/other/js/nodejs/import.md:
--------------------------------------------------------------------------------
1 | # import
2 |
3 | [import statement](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import)
4 |
--------------------------------------------------------------------------------
/other/js/nodejs/readme.md:
--------------------------------------------------------------------------------
1 | # nodejs
2 |
3 | ## tools
4 |
5 | - [`joy` Delighfully simple schema validation.](https://npm.taobao.org/package/joy)
6 | - [`nodemon` Simple monitor script for use during development of a node.js app.](https://npm.taobao.org/package/nodemon)
7 | - [live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer)
8 |
--------------------------------------------------------------------------------
/other/js/reactjs/react-lifecycle.md:
--------------------------------------------------------------------------------
1 | # lifecycle
2 |
3 | - [react lifecycle](http://projects.wojtekmaj.pl/react-lifecycle-methods-diagram/)
--------------------------------------------------------------------------------
/other/js/reactjs/react-redux.md:
--------------------------------------------------------------------------------
1 | # redux
2 |
3 | - state
4 | - actions
5 | - store
6 | - reducer
7 | - container
8 | - connect
9 | - dispatch
10 |
--------------------------------------------------------------------------------
/other/js/reactjs/readme.md:
--------------------------------------------------------------------------------
1 | # react
2 |
3 | - [reactjs get start](https://reactjs.org/docs/getting-started.html)
4 | - [typescript + react](https://github.com/Microsoft/TypeScript-React-Starter#typescript-react-starter)
5 | - [redux](https://redux.js.org/)
6 |
--------------------------------------------------------------------------------
/other/js/static.md:
--------------------------------------------------------------------------------
1 | # static
2 |
3 | - [static](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Classes/static)
--------------------------------------------------------------------------------
/other/js/strict.md:
--------------------------------------------------------------------------------
1 | # strict
2 |
3 | ```js
4 | "use strict";
5 | ```
6 |
7 | - [Strict_mode](https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Strict_mode)
8 |
--------------------------------------------------------------------------------
/other/js/super.md:
--------------------------------------------------------------------------------
1 | # super
--------------------------------------------------------------------------------
/other/js/this.md:
--------------------------------------------------------------------------------
1 | # this
2 |
3 | - [this](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/this)
4 | - [https://yehudakatz.com/2011/08/10/understanding-javascript-function-invocation-and-this/](https://yehudakatz.com/2011/08/10/understanding-javascript-function-invocation-and-this/)
5 |
--------------------------------------------------------------------------------
/other/js/vuejs/readme.md:
--------------------------------------------------------------------------------
1 | # vuejs
2 |
3 | - [https://github.com/vuejs/vue-router.git](https://github.com/vuejs/vue-router.git)
4 |
--------------------------------------------------------------------------------
/other/nginx.md:
--------------------------------------------------------------------------------
1 | # Nginx
2 |
3 | - [https://www.digitalocean.com/community/tools/nginx?global.app.lang=zhCN](https://www.digitalocean.com/community/tools/nginx?global.app.lang=zhCN)
--------------------------------------------------------------------------------
/other/readme.md:
--------------------------------------------------------------------------------
1 | # ➎➍➏➍➎➍
2 |
3 | - [git fork](https://github.com/staticblog/wiki/wiki/%E4%BF%9D%E6%8C%81fork%E4%B9%8B%E5%90%8E%E7%9A%84%E9%A1%B9%E7%9B%AE%E5%92%8C%E4%B8%8A%E6%B8%B8%E5%90%8C%E6%AD%A5)
--------------------------------------------------------------------------------
/other/todo/todo.md:
--------------------------------------------------------------------------------
1 | # todo
2 |
3 | - TCP
4 | - Http
5 | - redis
6 | - zk
7 | - dubbo
8 | - Spring MVC
9 | - Spring AOP
10 | - GO
11 | - Mysql
12 | - Mybatis
13 |
--------------------------------------------------------------------------------
/other/typescript/class.md:
--------------------------------------------------------------------------------
1 | # Class
2 |
3 | - [Class](https://www.tslang.cn/docs/handbook/classes.html)
4 |
--------------------------------------------------------------------------------
/other/typescript/readme.md:
--------------------------------------------------------------------------------
1 | # typescript
2 |
3 | - [https://www.tslang.cn/index.html](https://www.tslang.cn/index.html)
4 | - [https://www.typescriptlang.org](https://www.typescriptlang.org)
5 | - [https://www.tslang.cn/docs/home.html](https://www.tslang.cn/docs/home.html)
6 |
--------------------------------------------------------------------------------
/other/utils/readme.md:
--------------------------------------------------------------------------------
1 | # utils
2 |
3 | ```shell
4 | # 生成文件的目录index
5 | cat spring-reference-022.md |grep ^# | awk -F"## " '{ print $2}' |grep -v '^$' |sed 's/ [ ]*/-/g' |sed 's/[@]//g' |sed 's/(//g'|sed 's/)//g' | tr '[a-zA-Z]' '[a-za-z]'| awk '$0="- "NR" ["$0"](#"$0")"'
6 | ```
7 |
--------------------------------------------------------------------------------
/plan/2023-08.md:
--------------------------------------------------------------------------------
1 | # 计划
2 |
3 | - 算法,平均一天一个
4 | - 软件,kafka
5 | - 日志存储
6 | - 深入服务端
7 | - 硬件,基本放大电路
--------------------------------------------------------------------------------
/read.md:
--------------------------------------------------------------------------------
1 | # Read
2 |
3 | ## JAVA JVM
4 |
5 | - Java JUC
6 | - JAVA 集合
7 | - JAVA 线程/线程池
8 | - JVM 内存管理
9 | - JVM GC
10 |
11 | ## 数据
12 |
13 | - Redis
14 | - MySQL
15 | - Elasticsearch
16 |
17 |
18 | ## 框架
19 |
20 | - Dubbo
21 | - Netty
22 | - Spring
23 | - Spring Cloud
24 | - Spring Boot
25 |
26 | ## 算法
27 |
28 |
29 | ## 设计方案
30 |
31 |
32 |
--------------------------------------------------------------------------------
/redis/Redis核心/images/redis-collection.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/redis/Redis核心/images/redis-collection.png
--------------------------------------------------------------------------------
/redis/Redis核心/images/redis-data-type.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/redis/Redis核心/images/redis-data-type.png
--------------------------------------------------------------------------------
/redis/Redis核心/redis-cmd.md:
--------------------------------------------------------------------------------
1 | # Redis info
2 |
3 | Redis info 命令详解
4 |
5 | - [https://redis.io/commands/info/](https://redis.io/commands/info/)
6 | - [https://redis.com.cn/commands.html](https://redis.com.cn/commands.html)
7 | - [Redis SCAN KEYS 的注意点](https://juejin.cn/post/7080888633477545997)
--------------------------------------------------------------------------------
/redis/Redis核心/redis-fork.md:
--------------------------------------------------------------------------------
1 | # Redis fork
2 |
3 | fork 技术在 Redis 中的应用
4 |
5 | - Copy-On-Write, COW
6 | - Linux 的内存管理(页表管理和复制)
7 |
--------------------------------------------------------------------------------
/redis/jedis.md:
--------------------------------------------------------------------------------
1 | # jredis
2 |
3 | - [https://github.com/xetorthio/jedis](https://github.com/xetorthio/jedis)
4 |
5 | ## maven
6 |
7 | ```xml
8 |
9 | redis.clients
10 | jedis
11 | 2.5.1
12 |
13 | ```
14 |
--------------------------------------------------------------------------------
/redis/readme.md:
--------------------------------------------------------------------------------
1 | # Redis
2 |
3 | - [Redis的设计与实现](./Redis的设计与实现/readme.md)
4 |
5 | ## redis 相关的文章
6 |
7 | - [redis.md](redis-blog.md)
8 |
9 | ## Links
10 |
11 | - [Redis 内存使用计算](http://www.redis.cn/redis_memory/)
12 | - [redis aof](https://www.cnblogs.com/mmgithub123/p/15853680.html)
--------------------------------------------------------------------------------
/redis/redis-blog.md:
--------------------------------------------------------------------------------
1 | # redis
2 |
3 | ## redsi 分布式锁的实现
4 |
5 | - [redis 锁](https://www.cnblogs.com/demingblog/p/9542124.html)
6 | - [https://redis.io/topics/distlock](https://redis.io/topics/distlock)
7 | - [https://redis.io/commands/set](https://redis.io/commands/set)
8 | - [redis skipList](https://www.jianshu.com/p/a85e392118a9)
9 | - [跳表 skipList](https://www.cnblogs.com/myseries/p/11442335.html)
--------------------------------------------------------------------------------
/redis/redis-cmd.md:
--------------------------------------------------------------------------------
1 | # Redis 命令
2 |
3 | - INFO replication
4 | - INFO
5 | - slowlog get
--------------------------------------------------------------------------------
/redis/redis-config.md:
--------------------------------------------------------------------------------
1 | # Redis 配置
2 |
3 | - protected-mode 和 cluster-node-timeout
4 |
--------------------------------------------------------------------------------
/redis/redis-io.md:
--------------------------------------------------------------------------------
1 | # Redis 线程模型
2 |
3 | ## 单线程
4 |
5 | - I/O 操作单线程,写请求单线程。但是网络使用多路复用I/O ,并且都是内存的写更新,单线程可以满足上万的TPS
--------------------------------------------------------------------------------
/rocketmq/images/idea-quick-go-to-line.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/idea-quick-go-to-line.png
--------------------------------------------------------------------------------
/rocketmq/images/mapped-file-queue-new.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/mapped-file-queue-new.png
--------------------------------------------------------------------------------
/rocketmq/images/rmq-basic-arc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rmq-basic-arc.png
--------------------------------------------------------------------------------
/rocketmq/images/rocket-mq-customer-head-trac.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocket-mq-customer-head-trac.png
--------------------------------------------------------------------------------
/rocketmq/images/rocket-mq-customer-head.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocket-mq-customer-head.png
--------------------------------------------------------------------------------
/rocketmq/images/rocket-mq-tx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocket-mq-tx.png
--------------------------------------------------------------------------------
/rocketmq/images/rocket-netty-async.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocket-netty-async.png
--------------------------------------------------------------------------------
/rocketmq/images/rocket-store-msg-seralize.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocket-store-msg-seralize.png
--------------------------------------------------------------------------------
/rocketmq/images/rocket-store-msg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocket-store-msg.png
--------------------------------------------------------------------------------
/rocketmq/images/rocket-store.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocket-store.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-consumer-AllocateMessageQueueAveragely.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-consumer-AllocateMessageQueueAveragely.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-consumer-consumer-simple.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-consumer-consumer-simple.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-consumer-create-consumer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-consumer-create-consumer.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-consumer-create-topic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-consumer-create-topic.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-consumer-nameserver.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-consumer-nameserver.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-consumer-route-info.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-consumer-route-info.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-consumer-send-msg.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-consumer-send-msg.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-consumer-start.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-consumer-start.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-consumer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-consumer.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-delete-tags.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-delete-tags.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-messgae-flow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-messgae-flow.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-mqadmin.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-mqadmin.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-msg-serialize.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-msg-serialize.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-nameserver-info.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-nameserver-info.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-processer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-processer.png
--------------------------------------------------------------------------------
/rocketmq/images/rocketmq-producer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/rocketmq-producer.png
--------------------------------------------------------------------------------
/rocketmq/images/topic-config.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/topic-config.png
--------------------------------------------------------------------------------
/rocketmq/images/tpoic-route-data.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/rocketmq/images/tpoic-route-data.png
--------------------------------------------------------------------------------
/rocketmq/readme-todo.md:
--------------------------------------------------------------------------------
1 | # TODO
2 |
3 | - RocketMQ 延迟消息
4 |
--------------------------------------------------------------------------------
/rocketmq/rocketmq-HA.md:
--------------------------------------------------------------------------------
1 | # High Availability
2 |
3 | RocketMQ 的高可用的实现。
4 |
5 | RocketMQ 构架图:
6 |
7 | 
8 |
9 | 从构架图中可知道,RocketMQ 支持多个 NameServer,多个 Master Broker 和 多个 Slave Broker 的。
10 |
11 | ## Links
12 |
13 | - [主从同步注意点](https://cloud.tencent.com/developer/article/1458089)
14 | - [RocketMQ HA机制](https://developer.aliyun.com/article/839243)
--------------------------------------------------------------------------------
/rocketmq/rocketmq-broker-cluster.md:
--------------------------------------------------------------------------------
1 | # Broker Cluster
2 |
--------------------------------------------------------------------------------
/rocketmq/rocketmq-delay-message.md:
--------------------------------------------------------------------------------
1 | # RocketMQ 延迟消息
2 |
3 |
4 |
5 | ## Links
6 |
7 | - [延迟消息队列](https://cloud.tencent.com/developer/article/1581368)
--------------------------------------------------------------------------------
/rocketmq/rocketmq-filter.md:
--------------------------------------------------------------------------------
1 | # filter
2 |
--------------------------------------------------------------------------------
/rocketmq/rocketmq-index.md:
--------------------------------------------------------------------------------
1 | # index
2 |
3 | RocketMQ 的索引实现。
4 |
5 | 核心类:`org.apache.rocketmq.store.index.IndexService`,`org.apache.rocketmq.store.index.IndexFile`
6 |
7 | ## IndexFile 文件的结构
8 |
9 | ## IndexFile 文件的写入
10 |
11 | ## IndexFile 文件的读取
12 |
13 |
14 | ## Links
15 |
16 | - [IndexFile](https://juejin.cn/post/6980883151325233160)
17 | - [IndexFile](https://www.jianshu.com/p/e0befd11aee0)
--------------------------------------------------------------------------------
/rocketmq/rocketmq-message-store.md:
--------------------------------------------------------------------------------
1 | # MessageStore
2 |
3 | ## DefaultMessageStore
4 |
5 | ## DefaultMessageStore#getMessage
6 |
--------------------------------------------------------------------------------
/rocketmq/rocketmq-namespace.md:
--------------------------------------------------------------------------------
1 | # Namespace
2 |
--------------------------------------------------------------------------------
/rocketmq/rocketmq-netty.md:
--------------------------------------------------------------------------------
1 | # netty
2 |
--------------------------------------------------------------------------------
/rocketmq/rocketmq-route-info.md:
--------------------------------------------------------------------------------
1 | # RouteInfoManager
2 |
3 | `org.apache.rocketmq.namesrv.routeinfo.RouteInfoManager`
4 |
--------------------------------------------------------------------------------
/rocketmq/rocketmq-route.md:
--------------------------------------------------------------------------------
1 | # route
2 |
--------------------------------------------------------------------------------
/rocketmq/rocketmq-topic.md:
--------------------------------------------------------------------------------
1 | # tpoic
2 |
3 | ## Topic 的概念
4 |
5 | ## Topic 的创建
6 |
7 | ```java
8 | // MQAdminImpl#createTopic
9 |
10 | ```
11 |
12 | ## Topic 的自动创建
13 |
14 | ## Topic 的手动创建
15 |
--------------------------------------------------------------------------------
/seata/images/seata-BranchStatus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/seata/images/seata-BranchStatus.png
--------------------------------------------------------------------------------
/seata/images/seata-GlobalStatus.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/seata/images/seata-GlobalStatus.png
--------------------------------------------------------------------------------
/seata/images/seata-commit-failed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/seata/images/seata-commit-failed.png
--------------------------------------------------------------------------------
/seata/images/seata-rollback-failed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/seata/images/seata-rollback-failed.png
--------------------------------------------------------------------------------
/seata/images/seata-seata.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/seata/images/seata-seata.png
--------------------------------------------------------------------------------
/seata/images/seata-session-manager.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/seata/images/seata-session-manager.png
--------------------------------------------------------------------------------
/seata/images/seata-tm-tm-tc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/seata/images/seata-tm-tm-tc.png
--------------------------------------------------------------------------------
/seata/images/seata-try-failed.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/seata/images/seata-try-failed.png
--------------------------------------------------------------------------------
/seata/seata-global-transaction-scanner.md:
--------------------------------------------------------------------------------
1 | # GlobalTransactionScanner
2 |
--------------------------------------------------------------------------------
/seata/seata-global-transaction.md:
--------------------------------------------------------------------------------
1 | # GlobalTransaction
2 |
3 | ## GlobalTransactionalInterceptor
4 |
5 | ## TccActionInterceptor
6 |
--------------------------------------------------------------------------------
/seata/seata-lock.md:
--------------------------------------------------------------------------------
1 | # Seata Lock
2 |
3 | - [@GlobalLock](https://seata.io/zh-cn/blog/seata-at-lock.html)
--------------------------------------------------------------------------------
/seata/seata-resource-manager.md:
--------------------------------------------------------------------------------
1 | # ResourceManager
2 |
--------------------------------------------------------------------------------
/seata/seata-session-manager.md:
--------------------------------------------------------------------------------
1 | # SessionManager
2 |
--------------------------------------------------------------------------------
/seata/seata-tcc-and-ocketmq.md:
--------------------------------------------------------------------------------
1 | # TCC + RocketMQ
2 |
3 | 把RocketMQ 的事物纳入Seata进行管理。
4 |
5 | 实现步骤:
6 |
7 | 1. RocketMQ 分支事物的注册(第一阶段)
8 | 2. RocketMQ 分支事物的提交和回滚(第二阶段
9 |
10 | RocketMQ 在发送`事物消息`的时候,向Seata注册分支事物。在发消息成功之后,执行本地事物。
11 | 执行本地事物之后,根据本地事物的状态,发送commit 或者 rollback(事物结束)。
12 |
--------------------------------------------------------------------------------
/seata/seata-tcc-interceptor.md:
--------------------------------------------------------------------------------
1 | # Interceptor
2 |
3 | 和 TCC 相关的 `Interceptor`
4 |
5 | ## TccActionInterceptor
6 |
7 | ## ActionInterceptorHandler
8 |
9 | ## GlobalTransactionalInterceptor
10 |
--------------------------------------------------------------------------------
/seata/seata-tcc-resource-manager.md:
--------------------------------------------------------------------------------
1 | # TCCResourceManager
2 |
--------------------------------------------------------------------------------
/seata/seata-tcc.md:
--------------------------------------------------------------------------------
1 | # TCC
2 |
--------------------------------------------------------------------------------
/seata/seata-trans-status.md:
--------------------------------------------------------------------------------
1 | # Transtraction status
2 |
3 | ## BranchStatus
4 |
5 | 
6 |
7 | ## GlobalStatus
8 |
9 | 
10 |
11 |
--------------------------------------------------------------------------------
/seata/seata-transaction-manager.md:
--------------------------------------------------------------------------------
1 | # TransactionManager
2 |
--------------------------------------------------------------------------------
/seata/seata-transactional-template.md:
--------------------------------------------------------------------------------
1 | # TransactionalTemplate
2 |
--------------------------------------------------------------------------------
/seata/seatat-at.md:
--------------------------------------------------------------------------------
1 | # AT
2 |
--------------------------------------------------------------------------------
/shell/readme.md:
--------------------------------------------------------------------------------
1 | # 常用的shell
2 |
3 | ```sh
4 | for i in $(seq 1 100); do echo $i; done;
5 | ```
--------------------------------------------------------------------------------
/software-architecture/readme.md:
--------------------------------------------------------------------------------
1 | # 软件架构
2 |
3 | - 高性能,高可用,可扩展
4 | - 架构设计:识别复杂度
5 | - 业务逻辑太复杂,功能耦合严重
6 | -
--------------------------------------------------------------------------------
/spring-boot/spring-boot-enable-auto-configuration.md:
--------------------------------------------------------------------------------
1 | # EnableAutoConfiguration
2 |
--------------------------------------------------------------------------------
/spring-boot/spring-boot-logging.md:
--------------------------------------------------------------------------------
1 | # logging
2 |
3 | - [logging](https://docs.spring.io/spring-boot/docs/2.1.4.RELEASE/reference/htmlsingle/#boot-features-loggin)
4 |
--------------------------------------------------------------------------------
/spring-boot/spring-boot-spring-application.md:
--------------------------------------------------------------------------------
1 | # SpringApplication
2 |
3 | ## @SpringBootApplication
4 |
--------------------------------------------------------------------------------
/spring-cloud/spring-cloud-bus.md:
--------------------------------------------------------------------------------
1 | # spring cloud bus
2 |
3 | - 消息代理(Message Broker)
--------------------------------------------------------------------------------
/spring-cloud/spring-cloud-sleuth.md:
--------------------------------------------------------------------------------
1 | # Spring Cloud Sleuth
2 |
3 |
--------------------------------------------------------------------------------
/spring-cloud/zuul.md:
--------------------------------------------------------------------------------
1 | # Zuul
2 |
3 | - 过滤器
4 | -
5 |
6 | ## 过滤器
7 |
8 | - pre: 可以在请求被路由之前调用。
9 | - routing: 在路由请求时被调用。
10 | - post: 在routing 和error 过滤器之后被调用。
11 | - error: 处理请求时发生错误时被调用。
12 |
13 |
--------------------------------------------------------------------------------
/spring/images/DataAccessException.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/DataAccessException.gif
--------------------------------------------------------------------------------
/spring/images/aop-proxy-call.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/aop-proxy-call.png
--------------------------------------------------------------------------------
/spring/images/aop-proxy-plain-pojo-call.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/aop-proxy-plain-pojo-call.png
--------------------------------------------------------------------------------
/spring/images/container-magic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/container-magic.png
--------------------------------------------------------------------------------
/spring/images/kotlin-error.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/kotlin-error.png
--------------------------------------------------------------------------------
/spring/images/mvc-context-hierarchy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/mvc-context-hierarchy.png
--------------------------------------------------------------------------------
/spring/images/mvc-root-context.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/mvc-root-context.png
--------------------------------------------------------------------------------
/spring/images/mvc.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/mvc.png
--------------------------------------------------------------------------------
/spring/images/overview-full.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/overview-full.png
--------------------------------------------------------------------------------
/spring/images/oxm-exceptions.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/oxm-exceptions.png
--------------------------------------------------------------------------------
/spring/images/prototype.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/prototype.png
--------------------------------------------------------------------------------
/spring/images/singleton.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/singleton.png
--------------------------------------------------------------------------------
/spring/images/spring-ClassPathXmlApplicationContext.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/spring-ClassPathXmlApplicationContext.png
--------------------------------------------------------------------------------
/spring/images/spring-StandardEnvironment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/spring-StandardEnvironment.png
--------------------------------------------------------------------------------
/spring/images/spring-bean-init.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/spring-bean-init.png
--------------------------------------------------------------------------------
/spring/images/spring-bean-load.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/spring-bean-load.png
--------------------------------------------------------------------------------
/spring/images/spring-jdbc-vs-you.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/spring-jdbc-vs-you.png
--------------------------------------------------------------------------------
/spring/images/spring-servlet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/spring-servlet.png
--------------------------------------------------------------------------------
/spring/images/transaactional-settings.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/transaactional-settings.png
--------------------------------------------------------------------------------
/spring/images/tx-methond.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/tx-methond.png
--------------------------------------------------------------------------------
/spring/images/tx.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/tx.png
--------------------------------------------------------------------------------
/spring/images/tx_prop_required.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/tx_prop_required.png
--------------------------------------------------------------------------------
/spring/images/tx_prop_requires_new.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/images/tx_prop_requires_new.png
--------------------------------------------------------------------------------
/spring/spring-FAQ.md:
--------------------------------------------------------------------------------
1 | # Spring 常见问题
2 |
3 | 通过这些问题去深刻理解 Spring 的设计,知道其中设计思想。
4 |
5 | ## FAQ
6 |
7 | - [Spring 为什么需要 @Component,@Service, @Controller,@Repository 这些不同的注解,这样设计的好处?](./spring-faq/spring-faq-001.md)
--------------------------------------------------------------------------------
/spring/spring-annotation/readme.md:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/spring/spring-annotation/readme.md
--------------------------------------------------------------------------------
/spring/spring-annotation/spring-alias-for.md:
--------------------------------------------------------------------------------
1 | # @AliasFor
2 |
3 | ## AnnotatedElementUtils
4 |
5 | ## AnnotationUtils
6 |
7 | ## AnnotationUtils#synthesizeAnnotation
8 |
--------------------------------------------------------------------------------
/spring/spring-annotation/spring-bean.md:
--------------------------------------------------------------------------------
1 | # Bean
2 |
3 | Spring 中 `@Bean` 注解简介
4 |
5 | 来自 `@Bean` java doc
6 |
7 | > Indicates that a method produces a bean to be managed by the Spring container.
8 | >
9 | >> 创建一个由Spring 容器管理的Bean
10 |
--------------------------------------------------------------------------------
/spring/spring-annotation/spring-component-scan.md:
--------------------------------------------------------------------------------
1 | # ComponentScanAnnotationParser
2 |
3 | 解析 `@ComponentScans` 注解
4 |
--------------------------------------------------------------------------------
/spring/spring-bean/spring-abstract-bean-factory.md:
--------------------------------------------------------------------------------
1 | # AbstractBeanFactory
2 |
--------------------------------------------------------------------------------
/spring/spring-bean/spring-autowire.md:
--------------------------------------------------------------------------------
1 | # Autowire
2 |
3 | ## AbstractAutowireCapableBeanFactory.autowireByName
4 |
5 | ## AbstractAutowireCapableBeanFactory.autowireByType
6 |
7 | ## What different between keyword Autowired and autowireByType and autowireByName
8 |
9 |
--------------------------------------------------------------------------------
/spring/spring-bean/spring-bean-definition-registry-post-processor.md:
--------------------------------------------------------------------------------
1 | # BeanDefinitionRegistryPostProcessor
2 |
--------------------------------------------------------------------------------
/spring/spring-bean/spring-bean-definition-registry.md:
--------------------------------------------------------------------------------
1 | # BeanDefinitionRegistry
2 |
3 | - [BeanDefinition](spring-bean-definition.md)
4 |
--------------------------------------------------------------------------------
/spring/spring-bean/spring-generic-bean-definition.md:
--------------------------------------------------------------------------------
1 | # GenericBeanDefinition
2 |
--------------------------------------------------------------------------------
/spring/spring-bean/spring-instantiation-aware-bean-post-processor.md:
--------------------------------------------------------------------------------
1 | # InstantiationAwareBeanPostProcessor
2 |
3 | > 可以用来实现自定义注解的 `bean` 注册
4 |
--------------------------------------------------------------------------------
/spring/spring-context/spring-annotation.md:
--------------------------------------------------------------------------------
1 | # Spring Annotation
2 |
3 | > `Spring` 中所有常用的 `annotation` 注解列表
4 |
5 | - @Bean
6 | - @ComponentScans
7 | - @Configuration
8 | - @Import
9 | - @ImportResource
10 | - @Profile
11 | - @Component
12 | - @Controller
13 | - @Indexed
14 | - @Repository
15 | - @Service
16 |
--------------------------------------------------------------------------------
/spring/spring-context/spring-generic-application-context.md:
--------------------------------------------------------------------------------
1 | # GenericApplicationContext
2 |
--------------------------------------------------------------------------------
/spring/spring-context/spring-web-application-context.md:
--------------------------------------------------------------------------------
1 | # WebApplicationContext
2 |
3 | - `ContextLoaderListener`
4 |
--------------------------------------------------------------------------------
/spring/spring-core/readme.md:
--------------------------------------------------------------------------------
1 | # Sptring core
2 |
--------------------------------------------------------------------------------
/spring/spring-core/spring-aop.md:
--------------------------------------------------------------------------------
1 | # spring aop
2 |
3 | - [Spring AOP](https://blog.csdn.net/anurnomeru/article/details/79798659)
4 |
--------------------------------------------------------------------------------
/spring/spring-core/spring-util/spring-util.md:
--------------------------------------------------------------------------------
1 | # spring util
2 |
3 | `Spring` 中提供的工具类
4 |
--------------------------------------------------------------------------------
/spring/spring-mvc/spring-mvc-handier-interceptor-adapter.md:
--------------------------------------------------------------------------------
1 | # HandlerInterceptorAdapter
2 |
--------------------------------------------------------------------------------
/spring/spring-mvc/spring-web-handler-adapter.md:
--------------------------------------------------------------------------------
1 | # HandlerAdapter
2 |
3 | `RequestMappingHandlerAdapter` 是核心类
4 |
5 | ## HttpRequestHandlerAdapter
6 |
7 | ## SimpleControllerHandlerAdapter
8 |
9 | ## RequestMappingHandlerAdapter
10 |
11 | - [RequestMappingHandlerAdapter](spring-web-request-mapping-handler-adapter.md)
12 |
13 | ## HandlerInterceptorAdapter
14 |
--------------------------------------------------------------------------------
/spring/spring-mvc/spring-web-handler-mapping.md:
--------------------------------------------------------------------------------
1 | # HandlerMapping
--------------------------------------------------------------------------------
/spring/spring-mvc/spring-web-http-request-handler-servlet.md:
--------------------------------------------------------------------------------
1 | # HttpRequestHandlerServlet
2 |
--------------------------------------------------------------------------------
/spring/spring-mvc/spring-web-request-mapping-handler-mapping.md:
--------------------------------------------------------------------------------
1 | # RequestMappingHandlerMapping
2 |
--------------------------------------------------------------------------------
/spring/spring-mvc/spring-web-web-mvc-configuration-support.md:
--------------------------------------------------------------------------------
1 | # WebMvcConfigurationSupport
2 |
3 | `WebMvcConfigurationSupport` 提供了 自定义 `Spring mvc` 的入口
4 |
5 | ## EnableWebMvc
6 |
7 | `@EnableWebMvc`
8 |
--------------------------------------------------------------------------------
/spring/spring-reference/spring-reference-013.md:
--------------------------------------------------------------------------------
1 | # Introduction to Spring Testing
2 |
3 | Testing is an integral part of enterprise software development. This chapter focuses on the value-add of the IoC principle to unit testing and on the benefits of the Spring Framework’s support for integration testing. (A thorough treatment of testing in the enterprise is beyond the scope of this reference manual.)
--------------------------------------------------------------------------------
/spring/spring-reference/spring-reference-018.md:
--------------------------------------------------------------------------------
1 | # DAO support
2 |
3 | 
--------------------------------------------------------------------------------
/spring/spring-reference/spring-reference-026.md:
--------------------------------------------------------------------------------
1 | # WebSocket Support
2 |
--------------------------------------------------------------------------------
/swagger/readme.md:
--------------------------------------------------------------------------------
1 | # swagger
2 |
3 | - [https://swagger.io/](https://swagger.io/)
4 | - [http://springfox.github.io/springfox/](http://springfox.github.io/springfox/)
5 | - [https://github.com/springfox/springfox-demos](https://github.com/springfox/springfox-demos)
6 |
--------------------------------------------------------------------------------
/tcp-ip/HTTP权威指南/chap-002.md:
--------------------------------------------------------------------------------
1 | # 第2章URL与资源
2 |
3 | - URI是一类更通用的资源标识符,URL实际,上是它的一个子集
4 | -
--------------------------------------------------------------------------------
/tcp-ip/HTTP权威指南/chap-008.md:
--------------------------------------------------------------------------------
1 | # 第8章 集成点:网关、隧道及中继
2 |
3 | - 网关(gateway)
4 | - 有些网关会自动将 HTTP 流量转换为其他协议
5 | - 服务器端网关(server-side gateway)通过 HTTP 与客户端对话,通过其他协议与服务器通信(HTTP/*)。
6 | - 客户端网关(client-side gateway)通过其他协议与客户端对话,通过 HTTP 与服务器通信(*/HTTP)
7 | - 协议网关
8 | - < 客户端协议 >/< 服务器端协议 >
9 | - 用CONNECT建立HTTP隧道
10 | - 隧道 传输非HTTP 流量
11 | - HTTP 中继(relay)
12 | - 对流量进行盲转发
13 |
--------------------------------------------------------------------------------
/tcp-ip/HTTP权威指南/chap-009.md:
--------------------------------------------------------------------------------
1 | # 第9章 Web 机器人
2 |
3 | - 爬虫
4 |
--------------------------------------------------------------------------------
/tcp-ip/HTTP权威指南/chap-016.md:
--------------------------------------------------------------------------------
1 | # 第16章 国际化
2 |
3 |
--------------------------------------------------------------------------------
/tcp-ip/HTTP权威指南/chap-017.md:
--------------------------------------------------------------------------------
1 | # 第17章 内容协商与转码
2 |
3 | -
--------------------------------------------------------------------------------
/tcp-ip/HTTP权威指南/chap-019.md:
--------------------------------------------------------------------------------
1 | # 第19章 发布系统
2 |
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/chapter-05.md:
--------------------------------------------------------------------------------
1 | # RARP:逆地址解析协议
2 |
3 | 具有本地磁盘的系统引导时,一般是从磁盘上的配置文件中读取 IP 地址。但是无盘机,
4 | 如 X 终端或无盘工作站,则需要采用其他方法来获得 IP 地址。
5 | 网络上的每个系统都具有唯一的硬件地址,它是由网络接口生产厂家配置的。无盘系统
6 | 的 RARP 实现过程是从接口卡上读取唯一的硬件地址,然后发送一份 RARP 请求(一帧在网络
7 | 上广播的数据),请求某个主机响应该无盘系统的 IP 地址(在 RARP 应答中)。
8 |
9 | RARP 的正式规范是 RFC903 [Finlaysonetal.1984]
10 |
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/chapter-07.md:
--------------------------------------------------------------------------------
1 | # Ping 程序
2 |
3 | - IP 记录路由选项(RR)
4 |
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/chapter-13.md:
--------------------------------------------------------------------------------
1 | # IGMP:Internet 组管理协议
2 |
3 | IGMP 协议可以加入一个多播组
4 |
5 | > IGMP 报文封装在 IP 数据报
6 |
7 | 
8 |
9 | > IGMP 报文的字段格式
10 |
11 | 
12 |
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/chapter-15.md:
--------------------------------------------------------------------------------
1 | # TFTP:简单文件传送协议
2 |
3 | - TFTP(Trivial File Transfer Protocol)即简单文件传送协议
4 | - RFC 1350
5 |
6 | TFTP 是一个简单的协议,适合于只读存储器,仅用于无盘系统进行系统引导。它只使用
7 | 几种报文格式,是一种停止等待协议。
8 |
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-1-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-1-1.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-1-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-1-2.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-1-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-1-3.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-1-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-1-4.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-1-5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-1-5.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-1-6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-1-6.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-1-7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-1-7.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-10-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-10-1.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-10-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-10-2.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-11-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-11-1.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-11-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-11-2.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-12-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-12-1.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-13-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-13-1.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-13-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-13-2.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-14-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-14-3.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-16-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-16-1.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-17-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-17-1.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-17-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-17-2.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-18-10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-18-10.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-18-12.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-18-12.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-18-13.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-18-13.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-18-20.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-18-20.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-18-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-18-3.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-18-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-18-4.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-2-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-2-1.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-2-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-2-4.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-20-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-20-4.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-20-5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-20-5.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-3-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-3-1.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-3-7.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-3-7.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-4-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-4-1.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-4-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-4-3.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-6-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-6-1.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-6-10.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-6-10.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-6-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-6-2.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-6-9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/TCP-IP-6-9.png
--------------------------------------------------------------------------------
/tcp-ip/TCP-IP-详解-卷1/images/little-big-endian.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/TCP-IP-详解-卷1/images/little-big-endian.jpg
--------------------------------------------------------------------------------
/tcp-ip/Unix网络编程-卷1/chapter-01.md:
--------------------------------------------------------------------------------
1 | # 简介
2 |
3 | 创建套接字服务步骤:
4 |
5 | - 创建 TCP 套接字
6 | - 把服务的众所周知的端口绑定到套接字 (主机可以有多个网络接口。INADDR_ANY 表示任意地址)
7 | - 把套接字转换成监听套接字
8 | - 接受客户端连接,发送应答
9 | - 终止连接
10 |
--------------------------------------------------------------------------------
/tcp-ip/Unix网络编程-卷1/chapter-03.md:
--------------------------------------------------------------------------------
1 | # 套接字编程简介
2 |
3 | - 套接字地址结构
4 | - 值-结果参数
5 | - 字节操作函数
6 | - 字节操纵函数
7 |
--------------------------------------------------------------------------------
/tcp-ip/Unix网络编程-卷1/chapter-04.md:
--------------------------------------------------------------------------------
1 | # 基本 TCP 套接字编程
2 |
3 | - socket 函数
4 | - connect 函数
5 | - bind 函数
6 | - listen 函数
7 | - accept 函数
8 | - fork 和 exec 函数
9 | - close 函数
10 | - getsocketname 函数
11 | - getpeername 函数
12 |
13 | > 图 4-1 基本 TCP 客户/服务器程序的套接字函数
14 |
15 | 
16 |
--------------------------------------------------------------------------------
/tcp-ip/Unix网络编程-卷1/chapter-05.md:
--------------------------------------------------------------------------------
1 | # TCP 客户/服务器程序示例
2 |
3 | 关键字:
4 |
5 | - 回射服务器
6 | - POSIX 信号处理
7 | - 处理被中断的系统调用
8 |
9 | ## 回射服务器
10 |
11 | 1. 客户端从标准输入读入一行文本,并写给服务器
12 | 2. 服务器从网络上读取这行文本,并(会射)写给客户端
13 | 3. 客户端从网络上读取这行回射,并显示在标准输出上
14 |
15 | ## POSIX 信号处理
16 |
17 | ## Links
18 |
19 | - [EINTR & 系统中断](https://zhuanlan.zhihu.com/p/159130182)
20 |
--------------------------------------------------------------------------------
/tcp-ip/Unix网络编程-卷1/chapter-14.md:
--------------------------------------------------------------------------------
1 | # 高级 I/O 函数
2 |
3 | - recv 和 send 函数
4 | - readv 和 writev 函数
5 | - recvmsg 和 sendmsg 函数
6 | - /dev/poll 接口
7 | - kqueue 接口
8 |
--------------------------------------------------------------------------------
/tcp-ip/Unix网络编程-卷1/chapter-15.md:
--------------------------------------------------------------------------------
1 | # Unix 域协议
2 |
3 | ```c
4 | struct sockaddr_un
5 | {
6 | uint8_t sun_len; // 有些实现中可能没有这个成员
7 | sa_family_t sun_family; // AF_LOCAL
8 | char sun_path[104]; // null-terminated pathname. 有些实现中该值可能为108
9 | };
10 | ```
--------------------------------------------------------------------------------
/tcp-ip/Unix网络编程-卷1/chapter-25.md:
--------------------------------------------------------------------------------
1 | # 信号驱动式 I/O
2 |
--------------------------------------------------------------------------------
/tcp-ip/Unix网络编程-卷1/images/unix-1.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/Unix网络编程-卷1/images/unix-1.jpg
--------------------------------------------------------------------------------
/tcp-ip/Unix网络编程-卷1/images/unix-network-1-4-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/Unix网络编程-卷1/images/unix-network-1-4-1.png
--------------------------------------------------------------------------------
/tcp-ip/Unix网络编程-卷1/images/unix-network-1-6-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/Unix网络编程-卷1/images/unix-network-1-6-1.png
--------------------------------------------------------------------------------
/tcp-ip/Unix网络编程-卷1/images/unix-network-1-6-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/Unix网络编程-卷1/images/unix-network-1-6-2.png
--------------------------------------------------------------------------------
/tcp-ip/Unix网络编程-卷1/images/unix-network-1-6-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/Unix网络编程-卷1/images/unix-network-1-6-3.png
--------------------------------------------------------------------------------
/tcp-ip/Unix网络编程-卷1/images/unix-network-1-6-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/Unix网络编程-卷1/images/unix-network-1-6-4.png
--------------------------------------------------------------------------------
/tcp-ip/Unix网络编程-卷1/images/unix-network-1-6-5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/Unix网络编程-卷1/images/unix-network-1-6-5.png
--------------------------------------------------------------------------------
/tcp-ip/Unix网络编程-卷1/images/unix-network-1-6-6.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/Unix网络编程-卷1/images/unix-network-1-6-6.png
--------------------------------------------------------------------------------
/tcp-ip/images/Tcp_state_diagram.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/web1992/read/e9bb6047aa256512630be9a0d7ced96a7cdbfa72/tcp-ip/images/Tcp_state_diagram.png
--------------------------------------------------------------------------------
/todo/2022-03.md:
--------------------------------------------------------------------------------
1 | # 2020-03
2 |
3 | ## Raft
4 |
5 | - https://www.sofastack.tech/projects/sofa-jraft/overview/
6 | - https://www.cnblogs.com/luozhiyun/p/13150808.html
7 |
--------------------------------------------------------------------------------
/vscode/readme.md:
--------------------------------------------------------------------------------
1 | # vscode 教程
2 |
3 | ## vscode for java
4 |
5 | - [tutorial with vscode](https://code.visualstudio.com/docs/java/java-tutorial)
6 | - [java extensions](https://code.visualstudio.com/docs/java/extensions)
--------------------------------------------------------------------------------
/zookeeper/paxos.md:
--------------------------------------------------------------------------------
1 | # Paxos
2 |
3 | `Paxos` 一个小岛(虚拟的)的名字
4 |
5 | `Paxos` 算法的核心是一个`一致性`算法
--------------------------------------------------------------------------------
/zookeeper/readme.md:
--------------------------------------------------------------------------------
1 | # zookeeper
2 |
3 | ## api
4 |
5 | ## 错误处理
6 |
7 | ## 应用
8 |
9 | - 数据的发布订阅(数据配置中心)
10 | - 负载均衡
11 | - 命名服务
12 | - 分布式的协调/通知
13 |
14 | ## 原理与实现
15 |
16 | ## 特点
17 |
18 | - 高吞吐,低延迟
19 | - 保证分布式数据的一致性
20 | - 可自己处理运行故障,从故障中进行恢复
21 |
--------------------------------------------------------------------------------
/zookeeper/zooKeeper-overview.md:
--------------------------------------------------------------------------------
1 | # Overview
2 |
3 | You can see origin document at here [Overview](https://zookeeper.apache.org/doc/r3.5.3-beta/zookeeperOver.html)
4 |
--------------------------------------------------------------------------------
/zookeeper/zookeeper-barriers.md:
--------------------------------------------------------------------------------
1 | # Barriers
2 |
3 | - [Barriers](https://zookeeper.apache.org/doc/r3.5.3-beta/recipes.html#sc_recipes_eventHandles)
4 |
--------------------------------------------------------------------------------
/zookeeper/zookeeper-lock.md:
--------------------------------------------------------------------------------
1 | # lock
2 |
3 | - [zookeeper lock 实现demo](https://github.com/apache/zookeeper/tree/master/zookeeper-recipes/zookeeper-recipes-lock/src/main/java/org/apache/zookeeper/recipes/lock)
4 |
--------------------------------------------------------------------------------
/zookeeper/zookeeper-queues.md:
--------------------------------------------------------------------------------
1 | # Queues
2 |
3 | - [Queues](https://zookeeper.apache.org/doc/r3.5.3-beta/recipes.html#sc_recipes_Queues)
4 | - [Queue of java](https://github.com/apache/zookeeper/blob/master/src/recipes/queue/src/java/org/apache/zookeeper/recipes/queue/DistributedQueue.java)
5 |
--------------------------------------------------------------------------------