本文整理匯總了Golang中github.com/litl/shuttle/client.ServiceConfig.VirtualHosts方法的典型用法代碼示例。如果您正苦於以下問題:Golang ServiceConfig.VirtualHosts方法的具體用法?Golang ServiceConfig.VirtualHosts怎麽用?Golang ServiceConfig.VirtualHosts使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類github.com/litl/shuttle/client.ServiceConfig
的用法示例。
在下文中一共展示了ServiceConfig.VirtualHosts方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。
示例1: AddService
// Add a new service to the Registry.
// Do not replace an existing service.
func (s *ServiceRegistry) AddService(svcCfg client.ServiceConfig) error {
s.Lock()
defer s.Unlock()
log.Debug("Adding service:", svcCfg.Name)
if _, ok := s.svcs[svcCfg.Name]; ok {
log.Debug("Service already exists:", svcCfg.Name)
return ErrDuplicateService
}
s.setServiceDefaults(&svcCfg)
svcCfg = svcCfg.SetDefaults()
service := NewService(svcCfg)
err := service.start()
if err != nil {
return err
}
s.svcs[service.Name] = service
svcCfg.VirtualHosts = filterEmpty(svcCfg.VirtualHosts)
for _, name := range svcCfg.VirtualHosts {
vhost := s.vhosts[name]
if vhost == nil {
vhost = &VirtualHost{Name: name}
s.vhosts[name] = vhost
}
vhost.Add(service)
}
return nil
}
示例2: TestAddRemoveVHosts
func (s *HTTPSuite) TestAddRemoveVHosts(c *C) {
svcCfg := client.ServiceConfig{
Name: "VHostTest",
Addr: "127.0.0.1:9000",
VirtualHosts: []string{"test-vhost"},
}
for _, srv := range s.backendServers {
cfg := client.BackendConfig{
Addr: srv.addr,
Name: srv.addr,
}
svcCfg.Backends = append(svcCfg.Backends, cfg)
}
err := Registry.AddService(svcCfg)
if err != nil {
c.Fatal(err)
}
// now update the service with another vhost
svcCfg.VirtualHosts = append(svcCfg.VirtualHosts, "test-vhost-2")
err = Registry.UpdateService(svcCfg)
if err != nil {
c.Fatal(err)
}
if Registry.VHostsLen() != 2 {
c.Fatal("missing new vhost")
}
// remove the first vhost
svcCfg.VirtualHosts = []string{"test-vhost-2"}
err = Registry.UpdateService(svcCfg)
if err != nil {
c.Fatal(err)
}
if Registry.VHostsLen() != 1 {
c.Fatal("extra vhost:", Registry.VHostsLen())
}
// check responses from this new vhost
for _, srv := range s.backendServers {
checkHTTP("http://"+s.httpAddr+"/addr", "test-vhost-2", srv.addr, 200, c)
}
}