MCPcopy Create free account
hub / github.com/baidu/tera / StartServer

Method StartServer

src/master/master_entry.cc:54–93  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

52MasterEntry::~MasterEntry() {}
53
54bool MasterEntry::StartServer() {
55 // start metric http server
56 if (FLAGS_tera_metric_http_server_enable) {
57 if (!metric_http_server_->Start(FLAGS_tera_metric_http_server_listen_port)) {
58 LOG(ERROR) << "Start metric http server failed.";
59 return false;
60 }
61 } else {
62 LOG(INFO) << "Metric http server is disabled.";
63 }
64
65 IpAddress master_addr("0.0.0.0", FLAGS_tera_master_port);
66 LOG(INFO) << "Start master RPC server at: " << master_addr.ToString();
67
68 std::shared_ptr<auth::AccessEntry> access_entry =
69 std::make_shared<auth::AccessEntry>(FLAGS_tera_auth_policy);
70 std::shared_ptr<quota::MasterQuotaEntry> quota_entry =
71 std::make_shared<quota::MasterQuotaEntry>();
72 master_impl_.reset(new MasterImpl(access_entry, quota_entry));
73 multi_tenancy_service_impl_.reset(new MultiTenacyServiceImpl(access_entry, quota_entry));
74 thread_pool_.reset(new ThreadPool(FLAGS_tera_master_thread_max_num));
75 remote_master_ = new RemoteMaster(master_impl_.get(), thread_pool_);
76 remote_multi_tenancy_service_ =
77 new RemoteMultiTenancyService(multi_tenancy_service_impl_.get(), thread_pool_);
78
79 if (!master_impl_->Init()) {
80 return false;
81 }
82
83 rpc_server_->RegisterService(remote_master_);
84 rpc_server_->RegisterService(remote_multi_tenancy_service_);
85 if (!rpc_server_->Start(master_addr.ToString())) {
86 LOG(ERROR) << "start RPC server error";
87 return false;
88 }
89
90 LOG(INFO) << "finish starting master server for cluster: " << FLAGS_tera_cluster_name;
91
92 return true;
93}
94
95bool MasterEntry::Run() {
96 CollectorReportPublisher::GetInstance().Refresh();

Callers

nothing calls this directly

Calls 5

StartMethod · 0.45
ToStringMethod · 0.45
resetMethod · 0.45
getMethod · 0.45
InitMethod · 0.45

Tested by

no test coverage detected