1. An online advertisement method, comprising: selecting, among a plurality of advertising sources provided by a seller, a selected plurality of advertising sources that meet a predefined condition; generating, using a processor, a plurality of keyword sets that correspond to the selected plurality of advertising sources; establishing, using the processor, a programming model according to a set of predefined constraints, wherein the programming model represents matches of the selected plurality of advertising sources and the plurality of keyword sets; and determining, using the processor, a substantially optimal match between at least some of the plurality of advertising sources and the plurality of keyword sets by finding a solution for the programming model, wherein establishing the programming model according to the set of predefined constraints comprises: establishing a matrix X, an entry X i,j of the matrix representing whether the i-th keyword matches the j-th advertising source; and establishing an objective function subject to the set of predefined constraints as: max ⁢ ⁢ ∑ i = 1 n ⁢ ∑ j = 1 m ⁢ P ij ⁢ X ij Subject ⁢ ⁢ to ⁢ ⁢ { ∑ i = 1 n ⁢ X i , j ≤ N j , j = 1 , … ⁢ , m ∑ j = 1 m ⁢ X i , j ≤ 1 , i = 1 , … ⁢ , n X ij = 1 ⁢ ⁢ or ⁢ ⁢ 0 where P ij represents a seller gain due to a match between the i-th keyword and the j-th advertising source; X ij represents whether the i-th keyword matches the j-th advertising source; N j represents a maximum number of keywords that the j-th advertising source is allowed to have n represents total number of the keywords, and m represents total number of the selected advertising sources.