1.javaä¸è¬ç¨ä»ä¹è½¯ä»¶ç¼åï¼
2.FlyFish|前端数据可视化开发避坑指南(二)
3.五分钟看懂开源协议
4.Spring Boot å
åµå®¹å¨Undertowå代tomcat
javaä¸è¬ç¨ä»ä¹è½¯ä»¶ç¼åï¼
ç°å¨ä¼ä¸javaå¼åä¸è¬ä½¿ç¨åªäºè½¯ä»¶å¼åï¼
é对ç°å¨ä¼ä¸çè¯ï¼å ¶å®ä½¿ç¨ç软件æ¯å·®ä¸å¤çï¼ä¼ä¸è¶å¤§ï¼å¯è½æ¶åå°çå·¥å ·æ´å¤äºãå¦ä¹ Javaå¼åæ¨èåéæè²ï¼åéæè²å£ç¢å¾ä¸éï¼å®å强大ï¼èä¸åéçä¼ä¸ä½¿å½å°±æ¯è´åäºå¸®å©æ´å¤è¿·è«çå¦çå®ç°ä»ä»¬ç梦æ³ã
å举å¦ä¸ï¼
1ããideaãè¿ä¸ªæ¯ç®åæ主æµçJavaå¼åå·¥å ·ï¼åºè¯¥ä¹æ¯ä½¿ç¨æå¤çäºï¼åå®ç»å¸¸æ¿åºä¸å讨论çæ¯ãEclipseãï¼è¿ä¸¤ä¸ªæ¯Java使ç¨æ广æ³çå¼åå·¥å ·ï¼
2ããgithub/gitlabãè¿ä¸¤ä¸ªç½ç«ä¸»è¦æ¯ç¨äºä»£ç 管ççï¼ç®å使ç¨gitçæ¯ä½¿ç¨svnçè¦å¤å¾å¤ï¼
3ããmavenãè¿ä¸ªå ¶å®åºè¯¥ä¸è½ç®å·¥å ·ï¼æ¯ç¨äºjarå 管ççï¼
4ããjira/ç¦ é/bugzillaãè¿å 个æ¯ç¨äºé¡¹ç®ç®¡çï¼æµè¯æbugç¨çï¼
5ããjenkinsãç¨äºåæç»éæå项ç®ç¼è¯çï¼
6ããconflunece/è¯éãè¿ä¸¤ä¸ªä¸è¬æ¯ç¨äºå¢éåä½åæ档记å½çï¼æ¯å¦éæ±ææ¡£ï¼å¼åææ¡£ï¼æµè¯ææ¡£çï¼
7ããstarUML/processON/planUMLãè¿äºä¸è¬ç¨äºç»æµç¨å¾ï¼æ¶åºå¾ä½¿ç¨çï¼
8ããAxureãè¿ä¸ªæ¯ç¨äºäº§å使ç¨ï¼ç»ååprdçï¼
æ³è¦äºè§£æ´å¤javaå¼åçç¸å ³ä¿¡æ¯ï¼æ¨èå¨è¯¢åéæè²ãåéå±ç²¾å¾æ²»ï¼ä¸æ¹æè²åå¿ãåä¸å¹´æ¥ï¼åé以æ¿ç为å¼å¯¼ï¼ä¸æå®åå½å ç¹è²ç°ä»£èä¸æè²ä½ç³»å»ºè®¾ï¼å ååæ¥æç å¸èµéä¼ä½¿å½ï¼æ建åè´¨æè²ï¼å 大åæ°å人æå¹å »å度ï¼ä¸ºç»æµåå±æä¾æºå人æåæºåæ¯æï¼æ为æ°æ¶æèä¸æè²åå±çæ°æ¹åï¼å¨åè¡ä¸ä¸æå¾é«çç¾èªåº¦ã
å¦ä¹ javaéè¦ä¸è½½ä»ä¹è½¯ä»¶ï¼
1ãå®è£ JDKï¼å°å®ç½ä¸å»ä¸è½½JDK1.6ï¼ä¸éè¦ä½¿ç¨ææ°ç1.8ï¼å¾å¤è½¯ä»¶ä¸ºäºå ¼å®¹æ§é½è¿å¨1.6ä¸è·çãå¦ä¹ 好åºç¡ä¹åï¼å使ç¨éæå¼åç¯å¢çå¼åå·¥å ·ï¼IDEï¼ï¼æ¨è使ç¨InteliJ(ä»è´¹ç)ï¼åè½å¾å¼ºå¤§ï¼æºè½ãå è´¹çè¯ï¼æ¨è使ç¨eclipseå§ã
MyEclipseåè½å¾å¼ºå¤§ï¼å»ºè®®æ¯å ä¸è¦ä½¿ç¨ï¼å¼åå·¥å ·ä»è®°äºæ¬--UltraEdit---JBuilder--MyEclipseä¸ç¹ç¹è¿æ¸¡
åå¦javaï¼ä¸è¬é½æ¯ä»æ§å¶å°åºç¨ç¨åºå¼åå¼å§ç(æåå¼å§å欢å¨è®°äºæ¬ä¸å代ç )ï¼å¨cmdä¸è°è¯ï¼é¦å ä½ è¦ä¸ºä½ ççµèæ建好å¼åç¯å¢ï¼ä½ éè¦å¨sunç½ç«ä¸(å ¶å®ä¸è½½ç«ä¹æ)ä¸è½½ä¸ä¸ªå«JDKçä¸ä¸ï¼å®è£ å®æåè°è¯æåä½ å°±å¼å§åä½ ç第ä¸ä¸ªjavaç¨åºäºã
ç¨è®°äºæ¬åäºä¸æ®µä½ åä¼åç°ï¼è¿TM太æ¯ç¥äºï¼ç¨åºå¼åå¦æåªæ¯è¿æ ·ï¼è¾è¾è¦è¦å天æ£çé±ï¼è¿ä¸å¦å»æ¬ç ãææ°´æ¥çå®å¨(æè¿æ ·è¯´ï¼å¹¶ä¸æ¯è¯´è®°äºæ¬ä¸å¥½ï¼çæ°çç¨åºåï¼æéç±çå°±æ¯è®°äºæ¬ï¼æ们ä½ä¸ºåå¦è ï¼è¿æ¯å¿ ç»ä¹è·¯)ï¼è¿æ¶åä½ å°±è¦èèæ¢äºï¼UltraEditãè¿æJBuilderï¼é½æºå¥½ç¨ç
éçä½ å¦ä¹ çè¶æ¥è¶æ·±ï¼ä½ å°±ä¸åååªå±éäºæ§å¶å°å¼åï¼å°±ä¼æ ¢æ ¢å¯¹webå¼åæå ´è¶£äº(ä¾å¦ä½ ç»å¸¸ä½¿ç¨çç½é¶ï¼ç°å¨é¶è¡çç½ä¸é¶è¡äº¤æç³»ç»é½æ¯ç¨jsp(j2eeçæ ¸å¿ææ¯)åç)ï¼è¿æ¶åä½ éè¦æ´å¼ºå¤§ç软件æ¥æ¯æä½ çå¼å(ä½ åºå»ææ¶ï¼æ¿çæ£åæä¹æé£å®¶ä¼é½ä¸æ»ï¼è¿æ¶åä½ å°±è¦èèæ¢åäºï¼å¼åå·¥å ·åªæ¯ä½ æå©ç¨çä¸ä¸ªå·¥å ·ï¼éè¿å®æ¥è¾¾å°ä½ çç®ç)
åwebå¼åï¼å¾å¤äººå欢å欢ç¨Dreamweaverå æ页é¢è®¾è®¡å¥½ç¶ååææ½å°Eclipseä¸åè¿è¡ä¸å¡é»è¾çå ¶å®çå¼åï¼æçæ¶åæ ¹æ¬å°±æ¯ä¹±ä¸å «ç³ï¼æç建议æ¯è¿ä¸è¥¿ä½ æ好å«ç¨ï¼ä½ æå¨ç¼ååºæ¥çä¸è¥¿ï¼ä½ èªå·±æ´å¥½æ§å¶
å½ä½ çweb页å好çæ¶åï¼ä½ éè¦æå®é¨ç½²å¨æå¡å¨è½¯ä»¶ä¸ï¼è®©å®å¨èµ·æ¥å¨æå°æ¾ç¤ºå¨ä½ çç¼åï¼è¿æ¶åä½ éè¦ä¸æ¬¾æå¡å¨è½¯ä»¶ï¼ç°å¨æå¡å¨å·¥å ·åtomcatä¹ç±»çé½æ¯å è´¹çï¼ä½ å¯ä»¥åç½ä¸ä¸è½½ï¼æä¸æ¢ä¹±ç²é¾æ¥ï¼è¦ä¸å¯è½æç»ä½ ç解çä¼è¢«ç¾åº¦å±è½æç
åjavaå¼åï¼å¦ææ¶åå°äºwebå¼åï¼a.JSPb.åºæ¬ç½é¡µè®¾è®¡c.JavaScriptèæ¬d.æå¡å¨ææ¯e.æ°æ®åºf.ççççè¿äºä½ é½è¦æ¶çï¼å¤çä¸äºçµå书ï¼è§é¢ï¼ä¸ç½æ¥ä¸äºèµæï¼å¯¹ä½ ä¼æå¾å¤§ç帮å©ï¼ä¸å®è¦å¤å!
Javaä¸æç»äººçæè§å¾é¾ï¼ä½åªè¦ä½ åªåï¼ä¼è¶å¦è¶ç®åï¼.NETä¸æå¾ç®åï¼ä½è¶å¦è¶æ·±,源码è¯è¨æ¯ç¸éçï¼å½ä½ æä¸å¤©å¨javaä¸æ¸¸åæä½çæ¶åï¼ä½ å¦ä¹ å ¶å®è¯è¨çæ¶åï¼ä¼æ¯å«äººå¿«ä¸äºç
åå¦è ç¨ä»ä¹å¼å软件æ¥ç¼åJAVAç¨åºï¼ç¨myeclipseæè eclipseï¼è®°äºæ¬é½å¯ä»¥ã
1.åå¦è çè¯ä¸å»ºè®®ä¸æ¥å°±ç¨IDEå¼åå·¥å ·æ¯å¦è¯´EclipseãMyEclipseãIntelliJIDEAãnetbeanãä½æ¯ä¹å¯ä»¥ä½¿ç¨è¿äºï¼ä¸å»ºè®®çåå ä¸ä¾¿äºä½ äºè§£JavaAPIï¼åç¸å ³çç¼è¯åçï¼ç¼è¯è¿ç¨ä¹ç±»çã主è¦æ¯å°±æ¯çæåºç¡ã
2.åå¼å§å¯ä»¥ä½¿ç¨è®°äºæ¬ãeditplusãnotepadï¼è¿äºå·¥å ·çè¯ï¼æ¯è¾å纯ï¼ä½æ¯å¯è½ä¼ç»åå¦è å¶é ä¸äºä¸å¿ è¦ç麻ç¦ï¼å½±åå¦ä¹ ç积ææ§ã
3.ä¼è®©ä½ å¿«éæ¾å°ç¼ç¨çå¿«æã2çè¯å¦æä½ æå®äºä½¿ç¨IDEçè¯ä¹å°±æ¯å¦æ°å®¶çã并ä¸å¯¹äºåºç¡ä¹ä¼äºè§£çæ¯è¾å¤,å 为å¨ä½¿ç¨2çè¿ç¨ä¸ä½ ä¼ç¯ä¸å¾å¤é误ï¼å½ç¶å¤§å¤æ°å¯è½é½æ¯æ¼åé误ï¼ä½æ¯è¦å¤§èè¯éï¼ä¸è¦æã
4.ä¹å¯ä»¥ä½¿ç¨è®°äºæ¬ç¼è¾ä¿åæ ¼å¼ä¸º.javaçæ件ï¼ç¶åå®è£ JDKï¼ä½¿ç¨cmdå»ç¼è¯æ§è¡ã
JAVAç¼ç¨æ¯ç¨ä»ä¹è½¯ä»¶çï¼JAVAç¼ç¨å¸¸ç¨ç软件ï¼
1ãEclipseï¼
Eclipseæ¯ä¸ä¸ªå¼æ¾æºä»£ç çãåºäºJavaçå¯æ©å±å¼åå¹³å°ãå°±å ¶æ¬èº«èè¨ï¼å®åªæ¯ä¸ä¸ªæ¡æ¶åä¸ç»æå¡ï¼ç¨äºéè¿æ件ç»ä»¶æ建å¼åç¯å¢ã幸è¿çæ¯ï¼Eclipseé带äºä¸ä¸ªæ åçæ件éï¼å æ¬Javaå¼åå·¥å ·ï¼JavaDevelopmentToolsï¼JDTï¼ã
2ãMyEclipseï¼
MyEclipseæ¯Eclipseçå级çï¼ä¹æ¯ä¸æ¬¾åè½å¼ºå¤§çJ2EEéæå¼åç¯å¢ï¼ç±Genuitecå ¬å¸åå¸ï¼æä¾å è´¹çåæ¶è´¹çã被èªä¸ºæ好ç¨çJavaIDEä¹ä¸ã
MyEclipseæ¯å¯¹EclipseIDEçæ©å±ï¼å©ç¨å®å¯ä»¥å¨æ°æ®åºåJavaEEçå¼åãåå¸ä»¥ååºç¨ç¨åºæå¡å¨çæ´åæ¹é¢æ大çæé«å·¥ä½æçã
3ãIntelliJIDEAï¼
IntelliJIDEAæ¯ä¸æ¬¾ç»¼åçJavaç¼ç¨ç¯å¢ï¼è¢«è®¸å¤å¼å人ååè¡ä¸ä¸å®¶èªä¸ºå¸åºä¸æ好ç¨çIDEä¹ä¸ï¼ä¸MyEclipseé½åã
å®æä¾äºä¸ç³»åæå®ç¨ççå·¥å ·ç»åï¼æºè½ç¼ç è¾ å©åèªå¨æ§å¶ï¼æ¯æJ2EEï¼Antï¼JUnitåCVSéæï¼éå¹³è¡çç¼ç æ£æ¥ååæ°çGUI设计å¨ã
4ãNetBeansï¼
NetBeansIDEæ¯ä¸ä¸ªå±¡è·æ®è£çéæå¼åç¯å¢ï¼å¯ä»¥æ¹ä¾¿çå¨WindowsãMacãLinuxåSolarisä¸è¿è¡ãNetBeanså æ¬å¼æºçå¼åç¯å¢ååºç¨å¹³å°ï¼NetBeansIDEå¯ä»¥ä½¿å¼å人åå©ç¨Javaå¹³å°è½å¤å¿«éå建Webãä¼ä¸ãæ¡é¢ä»¥å移å¨çåºç¨ç¨åºã
5ãBlueJï¼
BlueJæ¯ä¸æ¬¾æ¯æJavaç¼ç¨è¯è¨çéæå¼åç¯å¢ï¼IDEï¼ãå®åæ¬æ¯ä¸ºäºæè²ç®çèå¼åçï¼åæ¶ä¹éåäºé£äºæ³åå°å软件å¼åçå¼å人åãå®çè¿è¡éè¦JDKï¼Javaå¼åå·¥å ·å ï¼ç帮å©ãBlueJ主è¦æ¯ä¸ºé¢å对象çç¨åºè®¾è®¡æå¦èå¼åçï¼å æ¤å®ç设计ä¸åäºå ¶ä»çå¼åç¯å¢ã
åèèµææ¥æºï¼ç¾åº¦ç¾ç§-BlueJ
åèèµææ¥æºï¼ç¾åº¦ç¾ç§-IntelliJIDEA
åèèµææ¥æºï¼ç¾åº¦ç¾ç§-Netbeans
åèèµææ¥æºï¼ç¾åº¦ç¾ç§-eclipse
åèèµææ¥æºï¼ç¾åº¦ç¾ç§-MyEclipse
ç¨æ¥ç¼åJAVAç¨åºçåºç¨è½¯ä»¶æåªäºï¼1ãEclipse-IBMç©åºæ¥ç»å¼æºç¤¾åºçIDEï¼å ¶æ¬èº«å°±æ¯ä½¿ç¨Javaå¼åçã\x0d\2ãMyEclipse-æEclipseå è£ äºä¸ä¸ï¼å äºJ2EEä¼ä¸å¼åç许å¤åè½å¼ºå¤§çæ件ã\x0d\3ãNetBeans-SUNå ¬å¸èªå·±å¼åçJavaå¼åç¯å¢ï¼åè½æºå¤çã\x0d\4ãè¿æä¸äºè¶ å欢æå·¥ç¼åJava代ç çç人å欢使ç¨å¸¦è¯æ³çè²åè½ç纯ææ¬ç¼è¾å¨ç¼åJavaç¨åºï¼ä»£ç åå®åå¨å½ä»¤æ示符ä¸ç¼è¯è¿è¡ãè¿ç§æ¹å¼åªéç¨åå°é代ç æä½ä¸ºå¦ä¹ 使ç¨ï¼å¼å大å项ç®ä¸éç¨ï¼å 为æçå¾ä½ã
Javaè¯è¨ä¸æåªäºå¿ å¤çå¼åå·¥å ·ï¼æ³è¦æ为Javaææ¯å¤§ç并ä¸å®¹æï¼ææ¯å¤§çä¸ä» éè¦å ·å¤æå®çå¼åæè½ï¼è¿éè¦ææ¡å¼åå·¥å ·åæ¡æ¶ç使ç¨ï¼å¨å¼åä¸ï¼å·¥å ·çéæ©å使ç¨æ¯é常éè¦çï¼å·¥å ·çåè½ä¸å使ç¨çæ åµä¹ä¸åãä¸é¢çµèå¹è®ä¸ºå¤§å®¶å ·ä½ä»ç»Java软件å¼åå¿ å¤çå¼åå·¥å ·ã
1ãMongoDB
MongoDBæ¯ä½¿ç¨é常广æ³çå·¥å ·ï¼å ·æ跨平å°åé¢åææ¡£æ°æ®åºçä¼å¿ï¼æ¯ç°å¨ä½¿ç¨æå¤çä¸ç§æ°æ®åºãå¨ä½¿ç¨è¿ç¨ä¸ï¼æçµæ´»çæ档模åãé«å¯ç¨å¤å¶éãå¯æ©å±åçé群ï¼è¿è½è¿è¡å®æ¶çæ§çç¸å ³æä½ãITå¹è®è®¤ä¸ºå å使ç¨å页é¢é误ï¼å¤å¶éçä¸MongoDBçé´å½±æ¯å¯ä¸å¯åã
2ãElasticsearch
Elasticsearch主è¦æ¯äºæ建åå¸å¼RESTfulçæç´¢å¼æï¼ä½æ¯Elasticsearchä¸ä» ä» æ¯ä¸ä¸ªå ¨ææ¬çæç´¢å¼æï¼è¿æ¯ä¸ä¸ªå ·æåå¸å¼å®æ¶ææ¡£åå¨ï¼éé¢çæ¯ä¸ªæ°æ®é½å¯ä»¥è¢«æç´¢ãå¨ä½¿ç¨è¿ç¨ä¸ï¼è¿å ·æåå¸å¼æç´¢å¼æãåæå¼æçå®æ¶åæåè½ã
3ãCassandra
Cassandraå±äºå¼æºåå¸å¼æ°æ®åºç®¡çç³»ç»ï¼Cassandra主è¦æ¯ä½¿ç¨Javaç¼ç¨è¯è¨è¿è¡ç¼åçï¼æ以å¨JDK6以ä¸ççæ¬é½æ¯å¯ä»¥è¿è¡ä½¿ç¨çï¼ä½¿ç¨çæä½å½ä»¤åå¹³æ¶ä½¿ç¨çä¸äºæ°æ®åºç¸ä¼¼ãææå大éé¸è®¤ä¸ºåªè¦æ¯çæå ¶ä»æ°æ®åºçç¥è¯ï¼ä½¿ç¨Cassandraæ¯é常容æçã
4ãRedis
Rediså¯ä»¥è¿è¡å åæ°æ®ç»æåå¨ï¼Redisæå¾å¤å ¶ä»å·¥å ·æä¸å ·å¤çä¼å¿ï¼ä¸ä» å¯ä»¥å¨å åä¸ä¿åæ°æ®åºå 容ï¼å¹¶ä¸æ使ç¨çç£çå ·ææä¹ æ§ãRedisçæ°æ®ç±»åæ¯è®¸å¤é®å¼æ°æ®åå¨ç³»ç»æ´ä¸°å¯ï¼å¦ä¸ä¸ªä¼ç¹æ¯Rediså¯ä»¥å°æ°æ®å¤å¶å°ä»»ä½æ°åã
5ãHadoop
Hadoopæ¯è¿è¡Javaç¼åç软件æ¡æ¶ï¼ä¸»è¦ä½¿ç¨å¨åå¸å¼åå¨ã对äºé常大çæ°æ®ï¼ç¨æ·å¯ä»¥å¨ä¸ç¥éåå¸å¼åºç¡çæ åµä¸è¿è¡å¼ååå¸å¼ç¨åºï¼å¹¶ä¸è½å¤ä½¿ç¨é群å®ç°é«é计ç®ååå¨ãå¨ä½¿ç¨è¿ç¨ä¸ï¼å大éé¸ææ计ç®æºå¦é¢è®¤ä¸ºHadoopè¿è½å®ç°åå¸å¼æ件系ç»ï¼è½å¤å¯¹å¤§éçæ°æ®è¿è¡åå¨ã
FlyFish|前端数据可视化开发避坑指南(二)
FlyFish是云智慧开源的一款数据可视化编排平台。通过配置数据模型,源码用户可实现上百种可视化图形组件,源码无需编码,源码即可打造符合业务需求的源码炫酷可视化大屏。平台还提供组件开发、源码sealtalk源码下载自定义函数与全局事件等配置,源码确保高效开发与交付。源码
注意,源码本避坑指南专为云智慧开源数据可视化平台FlyFish服务。源码对数据可视化感兴趣的源码读者可点击访问FlyFish并给项目Star。加入微信小悠智慧,源码回复"飞鱼",源码ripro游戏源码可加入开发者交流群,源码共同探讨。源码
A1:若遇到端口问题,需修改config/env.js中的componentDir配置,加入'/screen_cbdef0e9dbd5f'。
A2:为解决上述问题,可采用缩放方式解决。
A3:当前版本迭代至2.2.0,main分支代码稳定性欠佳,建议使用FlyFish-2.1.2版本。
A4:部署文件需放置于Nginx或Tomcat中,方可进行发布。OBV源码公式源码需通过web服务器部署,以供访问。
A5:为确保系统安全,需将SELinux设置为开启状态。
A6:调整端口至,如遇MongoDB认证失败,删除development中的连接字符串,去除账号密码。
A7:完成编译后,在lcaweb下运行lcapWeb。
A8:修改部署包中的config/env.js,对componentDir添加代理配置,unity timeline 源码如加了/testPage,则将componentDir改为testPage/components。
A9:若遇到访问问题,可尝试使用***或直接下载文件,避免使用git clone。
A:导出文件后,解压并运行index.html,使用nginx等服务发布。
A:开源版本仅提供Linux/mac版codeServer,出于安全考虑,进行了一些功能限制与优化,如限制终端使用,风电源码不支持Windows。如需,可参考文档进行本地安装,功能更全,但不建议公开部署。
A:...
A:接入数据源后,FlyFish支持SQL查询建模,直接应用于组件。
开源福利:云智慧已开源数据可视化编排平台FlyFish。配置数据模型,实现上百种可视化图形组件,无需编码,即可打造符合业务需求的炫酷大屏。提供组件开发、自定义函数与全局事件配置,高效开发与交付。欢迎访问GitHub或Gitee,给项目点赞送Star,参与组件开发,万元现金等你来拿。
GitHub地址:github.com/CloudWise-Op...
Gitee地址:gitee.com/CloudWise/fly...
五分钟看懂开源协议
作为程序员,理解和应用开源协议是必不可少的。本文旨在在短短几分钟内帮助读者对常见的开源协议有个基本了解,无论是创建开源项目还是使用开源成果,都能避免因协议问题而陷入困境。文章内容将简要介绍几个重要的开源协议,包括OSI认证的种协议,以及在GitHub上如何添加协议的步骤。
首先,OSI(Open Source Initiative)是一个推动开源软件发展的非盈利组织,官网提供了种被承认的协议列表。在GitHub上创建项目时,新建LICENSE文件时,系统会提供预设的协议模板,用户可以从中选择并了解其详细内容。
以Apache 2.0为例,它强调代码修改需注明,适用于商业项目,如Hadoop和Tomcat。BSD 2.0和3.0的区别在于,BSD 3.0要求不能使用原作者或产品名称做市场推广,而BSD 2.0则允许闭源商业软件发布。MIT协议允许商业化,Vue、React等就是采用此协议的项目。GPL 2.0要求商业项目使用其代码时必须开源,而GPL 3.0则新增了一些要求,GIMP和Bash等项目就遵循了这一协议。
对于LGPL,它允许引用类库而不必开源,但引用时必须以源码形式。AGPL在GPL基础上增加了网络交互时必须开源的条件。EPL和MPL则允许闭源商业软件发布,但有修改源码的特殊要求。选择协议时,应根据项目特点和目标来决定,详细信息可以参考相关网站。
通过本文的概述,读者应能对常用开源协议有基本认识,后续我们将继续更新五分钟系列,帮助大家快速掌握更多技术要点。关注我们的公众号、GitHub、掘金和知乎账号,获取更多技术内容更新。
Spring Boot å åµå®¹å¨Undertowå代tomcat
æ§è½æ¯è¾ï¼
Undertow,TomcatåJettyæå¡å¨é 置详解ä¸æ§è½æµè¯
Undertow认为å®çè¿ç¨åºæ¯æ¯å¨IOå¯éåçç³»ç»åºç¨ä¸ï¼å¹¶ä¸è®¤ä¸ºå¤æ ¸æºå¨æ¯ä¸ä¸ªæ¯è¾å®¹æ满足çç¹ï¼Undertowåå§ååæ³åºç¨çé»å¡ç³»æ°å¨0.8~0.9ä¹é´ï¼æ以é»å¡çº¿ç¨æ°ç´æ¥ä¹äºä¸ª8ï¼å½ç¶ï¼å¦æ对åºç¨è¾ç²¾ç¡®çä¼°æµé»å¡ç³»æ°ï¼å¯ä»¥é ç½®ä¸å»ï¼
å¦æ项ç®è¿è¡ä¸æ®µæ¶é´ååç°httpåå¨è¶ æ¶æè è·åhttpè¿æ¥æ¯è¾èæ¶çæ åµï¼å¯ä»¥éå½çå 大 workerThreads 线ç¨é ç½®ã
åç»ä¹ãSpringBootæå¡å¨åæµå¯¹æ¯ï¼jettyãtomcatãundertowï¼ã
undertowå¨githubçæºç
Spring Boot å åµå®¹å¨Undertowåæ°è®¾ç½®
Spring boot ä¸ Undertow é 置线ç¨æ°
线ç¨æ°è®¾å¤å°åéï¼ï¼
Dockerç¯å¢Spring Bootåºç¨undertow大éhttp请æ±è¶ æ¶