原创 webx 框架入門一

來阿里實習一個多月了,被拉着直接上新項目。由於新項目要使用webx,webx框架是淘寶的框架,比較厚重又複雜,但是性能毋庸置疑(畢竟每年雙十一都挺過來了)。由於webx文檔較少,基本都是阿里內部使用。在網上看了一個14年實習的師兄

原创 CSRF攻擊原理及防護

一、CSRF是什麼 CSRF全稱爲跨站請求僞造(Cross-site request forgery),是一種網絡攻擊方式,也被稱爲 one-click attack 或者 session riding。 二、CSRF攻擊原理 CSR

原创 golang 實現 等價查找二叉樹

剛接觸go語言半年,日常工作都是用小組內自研的going框架開發,對golang底層的併發機制並不是非常熟悉,近期特地研究了一下,簡單實現個小算法 不同二叉樹的葉節點上可以保存相同的值序列。例如,以下兩個二叉樹都保存了序列 `1,1,2,

原创 golang 實現bitmap

一、概述 本文將講述Bit-Map算法的相關原理,Bit-Map算法的一些利用場景,例如BitMap解決海量數據尋找重複、判斷個別元素是否在海量數據當中等問題.最後說說BitMap的特點已經在各個場景的使用性。 二、Bit-Map算法 先

原创 Netty 源碼閱讀 —— 服務端創建

之前項目中用過netty,這次趁着面試空閒時間,重新梳理一遍netty源碼,從服務端創建開始,話不多說,直接上代碼先看看netty服務端創建的整體代碼,大概如下所示:public void bind(int port) throws Ex

原创 Maven Pom 文件詳解

最近有點忘了maven的pom文件配置,備份一下<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-

原创 CORS 跨域請求實現

什麼是CORS?CORS是一個W3C標準,全稱是"跨域資源共享"(Cross-origin resource sharing)。它允許瀏覽器向跨源服務器,發出XMLHttpRequest請求,從而克服了AJAX只能同源使用的限制。什麼是跨

原创 幾種常見的負載均衡算法實現

常見的負載均衡算法包括輪詢法、隨機法、源地址哈希法、加權輪詢法、加權隨機法、最小連接法等。具體實現如下: package algorithm; import java.util.*; public class LoadBalancin

原创 Maven dependencies 和 DependencyManagement 區別

之前使用PandoraBoot + HSF 構建應用的時候出現了一個詭異問題package com.taobao.ase; import com.taobao.pandora.boot.PandoraBootstrap; import

原创 DataTables 參數詳解

//@translator codepiano //@blog codepiano //@email [email protected] //嘗試着翻譯了一下,難免有錯誤的地方,歡迎發郵件告知,多謝。 /*----------

原创 webx 表單驗證

拿典型的petstore舉例子,首先看一下WEB-INF的目錄結構:(petstore可以在webx官網下載:http://webx.github.io/) WEB-INFO ├── common │ ├── pipe

原创 leetcode 102. Binary Tree Level Order Traversal

Given a binary tree, return the level order traversal of its nodes’ values. (ie, from left to right, level by level).

原创 替換空格

題目:請實現一個函數,將一個字符串中的空格替換成“%20”。例如,當字符串爲We Are Happy.則經過替換之後的字符串爲We%20Are%20Happy。 解題思路:依題意肯定不能用replace()函數,如果用String類其他

原创 分佈式系列文章——Paxos算法原理與推導

Paxos算法在分佈式領域具有非常重要的地位。但是Paxos算法有兩個比較明顯的缺點:1.難以理解 2.工程實現更難。網上有很多講解Paxos算法的文章,但是質量參差不齊。看了很多關於Paxos的資料後發現,學習Paxos最好的資料是論文

原创 leetcode 172. Factorial Trailing Zeroes

Given an integer n, return the number of trailing zeroes in n!. Note: Your solution should be in logarithmic time compl