原创 Netty TCP Hello 實例
TCP Server Netty的服務之一是TCP服務。要創建Netty TCP服務,必須: 創建一個EventLoopGroup 創建和配置ServerBootstrap 創建一個ChannelInitializer 啓動服務器
原创 Java 非阻塞式通信中需要了解的概念:Future
Java 非阻塞式通信中需要了解的概念:Future Netty 中 ChannelFuture 和 Promise 都是繼承 java.util.concurrent.Future,所以有必要好好總結一下。 1.Future 的介紹
原创 Netty 幾個重要的核心組件
爲了瞭解Netty的工作原理,對Netty的內部設計有一個總體瞭解是很有用的。幾個核心概念: Bootstrap EventLoopGroup EventLoop SocketChannel ChannelInitializer Chan
原创 java fork任務爲多個小任務以提升任務性能
在執行一個大任務時,可以將其fork爲多個小任務,最後join得到結果。 fork任務主要是要設置一個閥值 THRESHOLD,不宜過小,也不宜過大,否則起不到提升性能的作用。 package com.learn.corejava.th
原创 Java NIO 簡介 - 基本概念
Netty 是基於 Java NIO 的封裝。 Java NIO(新IO)是Java的替代IO API(來自Java 1.4),意味着可以替代標準Java IO和Java Networking API。 Java NIO提供了與標準IO
原创 Netty:測試 Encoder 和 Decoder
最近用了一段時間的Netty,現構建了一個編碼器/解碼器管道,以測試編碼器和解碼器在沒有發送真實的消息時是否在正常工作。 方便的是,Netty 有個 EmbeddedChannel,使測試變得非常輕鬆。 假設我們有一條消息“ Foo”,
原创 Netty 核心: ChannelPipeline
Netty ChannelPipeline是Netty中非常核心的概念。每個SocketChannel包含一個ChannelPipeline。 ChannelPipeline包含ChannelHandler實例的列表。當數據進入和寫出So
原创 Netty SSL 驗證實例
Netty 官方支持 SSL 驗證,並自帶有實例代碼,下面代碼示例基本源自官方 demo: 1.服務端 package com.learn.netty.ssl; import io.netty.bootstrap.ServerBo
原创 Java Netty 教程
Netty是用於Java的高性能IO工具包。 Netty是開源的,因此可以自由使用它,甚至可以爲它做出貢獻。該Netty教程將解釋Netty的工作方式以及如何開始使用Netty。但本教程不會涵蓋Netty的每一個細節。 Netty官網
原创 收藏一些有用的開發類型、下載類型和工具類型網址
網站收藏集合: 1.http://www.allitebooks.org/ 原版IT開發類書籍PDF下載網站,文件超清晰。 2.https://convertio.co/zh/ 文件轉換網站,支持圖片格式轉換、文檔格式轉換、小說格式轉換、
原创 Java NIO 中核心概念
Java NIO由以下核心組件組成: Channels Buffers Selectors Java NIO本身有很多的類和組件,但是我認爲Channel,Buffer和Selector構成了API的核心。其餘的組件(例如Pipe和F
原创 java 8 理解flatmap
You will get a stream of streams, like [... ["y", "o", "u", "r"], ["b", "o", "a", "t"], ...] To flatten it out to a str
原创 Flask 在 Gunicorn 中日誌記錄沒有保存的問題
Flask 在 Gunicorn 中日誌記錄沒有保存的問題
原创 Gunicorn + Flask 中 MySQL 連接問題
Gunicorn + Flask 部署 測試發現:MySQL線程池無用,不論多少併發,MySQL使用使用連接數爲 1。 經過各種測試後,目前認爲是 GIL 的問題,全局鎖造成只有單線程在執行。(不確定,單現在只有這種能解釋通)
原创 Java 線程 Interrupt 方法
Thread t = new Thread(() -> { while (!Thread.currentThread().isInterrupted()) { System.out