| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253 |
- package strmatcher_test
- import (
- "strconv"
- "testing"
- "v2ray.com/core/common"
- . "v2ray.com/core/common/strmatcher"
- )
- func BenchmarkDomainMatcherGroup(b *testing.B) {
- g := new(DomainMatcherGroup)
- for i := 1; i <= 1024; i++ {
- g.Add(strconv.Itoa(i)+".v2ray.com", uint32(i))
- }
- b.ResetTimer()
- for i := 0; i < b.N; i++ {
- _ = g.Match("0.v2ray.com")
- }
- }
- func BenchmarkMarchGroup(b *testing.B) {
- g := NewMatcherGroup()
- for i := 1; i <= 1024; i++ {
- m, err := Domain.New(strconv.Itoa(i) + ".v2ray.com")
- common.Must(err)
- g.Add(m)
- }
- b.ResetTimer()
- for i := 0; i < b.N; i++ {
- _ = g.Match("0.v2ray.com")
- }
- }
- func BenchmarkCachedMarchGroup(b *testing.B) {
- g := NewMatcherGroup()
- for i := 1; i <= 1024; i++ {
- m, err := Domain.New(strconv.Itoa(i) + ".v2ray.com")
- common.Must(err)
- g.Add(m)
- }
- cg := NewCachedMatcherGroup(g)
- _ = cg.Match("0.v2ray.com")
- b.ResetTimer()
- for i := 0; i < b.N; i++ {
- _ = cg.Match("0.v2ray.com")
- }
- }
|