Visão geral do produto
Benefícios
Casos de uso
Arquitetura
Visão geral das regiões
Nome da opção | Descrição | Valor de amostra | Obrigatório |
syntax | Especifica a versão da especificação de sintaxe para gravar o arquivo atual. | proto2, proto3 | Sim |
package | Especifica o nome do pacote personalizado do arquivo atual, o que ajuda a evitar conflitos de nome com mensagens. | Informações do nome do pacote | Sim |
importIt | Indica algumas informações comuns importadas para a tabela do TcaplusDB, que devem ser importadas na definição da tabela. | tcaplusservice.optionv1.proto | Sim |
option (opção) com base na sintaxe do Protobuf, que pode implementar funcionalidades semânticas mais avançadas. O conteúdo definível é mostrado abaixo:
O formato de definição detalhada é option(tcaplusservice.option) = "value";.Nome da opção | Descrição | Exemplo de configuração | Obrigatório |
tcaplus_primary_key | Define o campo de chave primária da tabela do TcaplusDB. | option(tcaplusservice.tcaplus_primary_key) = "uin,name,region"; | Sim |
tcaplus_index | Define o campo da chave do índice da tabela do TcaplusDB. | option(tcaplusservice.tcaplus_index) = "index_1(uin,region)"; | Não |
tcaplus_sharding_key | Você pode personalizar o shardkey da tabela. | option(tcaplusservice.tcaplus_sharding_key) = "uin"; | Não |
tcaplus_field_cipher_suite | É necessário se a funcionalidade de criptografia de campo for usada. Para especificar seu algoritmo de criptografia personalizado, consulte o exemplo na documentação da API. | option(tcaplusservice.tcaplus_field_cipher_suite) = "DefaultAesCipherSuite"; | Não |
tcaplus_cipher_md5 | O MD5 (usado para criptografar a string de senha, que é armazenada no usuário) deve ser definido se a funcionalidade de criptografia de campo for usada. | option(tcaplusservice.tcaplus_cipher_md5)= "62fee3b53619b7f303c939964c6f2c4b"; | Não |
field modifier field type field name = identifier[special definition];.REQUIRED e usa o OPTIONAL como o modificador padrão.REQUIRED.OPTIONAL, mas pode conter vários valores ao mesmo tempo, que podem ser considerados como uma matriz. A definição especial de [packed = true] deve ser especificada.packed=true para especificar um campo declarado com o modificador REPEATED. A descrição da sintaxe é:repeated int64 lockid = 6 [packed = true];
default = 1 para especificar o valor padrão para um campo declarado com o modificador OPTIONAL. A descrição da sintaxe é:optional int32 logintime = 5 [default = 1];
required string name = 2[(tcaplusservice.tcaplus_crypto) = true];
syntax = "proto2"; // Indica a conformidade com a especificação de sintaxe do proto2.package myTcaplusTable; // Nome do pacote personalizadoimport "tcaplusservice.optionv1.proto"; // Define algumas informações comuns da tabela TcaplusDB, que devem ser importadas em sua definição de tabela.message player { // Usa uma message para definir a tabela e o nome da message é o nome da tabela.// Somente a message para a qual a opção de chave primária (tcaplusservice.tcaplus_primary_key) é especificada pode ser reconhecida como uma tabela de dados de negócios TcaplusDB. Caso contrário, a message é apenas uma estrutura.// A opção de chave primária especifica a lista de nomes de campo de chave primária separados por vírgulas. Até quatro campos podem ser especificados como chaves primárias.option(tcaplusservice.tcaplus_primary_key) = "uin,name,region";// Usa a opção "tcaplusservice.tcaplus_index" para especificar o índice TcaplusDB.// As chaves de índice incluídas em cada índice devem ser chaves primárias e a interseção de todos os conjuntos de campos de índice não pode estar vazia.option(tcaplusservice.tcaplus_index) = "index_1(uin,region)";option(tcaplusservice.tcaplus_index) = "index_2(uin,name)";// "option(tcaplusservice.tcaplus_sharding_key) = "uin";". Você pode definir explicitamente o campo de fragmentação do índice. Se você não definir explicitamente, o sistema usará um campo de chave primária como o campo de fragmentação por padrão.option(tcaplusservice.tcaplus_field_cipher_suite) = "DefaultAesCipherSuite"; // Usa a função de criptografia padrão "DefaultAesCipherSuite". Esse parâmetro é opcional.option(tcaplusservice.tcaplus_cipher_md5)= "62fee3b53619b7f303c939964c6f2c4b"; // Define o valor MD5 da string de senha de criptografia. Esse parâmetro é opcional.// A seguir mostra a definição de campos de tabela.// Uma tabela TcaplusDB suporta os seguintes tipos de dados:// Tipos aninhados: int32, int64, uint32, uint64, sint32, sint64, bool, fixed64, sfixed64, double, fixed32, sfixed32, float, string, bytes// Tipo aninhado: message// TcaplusDB aceita três modificadores de campo: REQUIRED, OPTIONAL e REPEATED.// (Até quatro) campos de chave primáriarequired int64 uin = 1; // Os campos de chave primária devem ser declarados com o modificador REQUIRED. Tipos de dados aninhados não são compatíveis.required string name = 2[(tcaplusservice.tcaplus_crypto) = true]; // Os campos do tipo string e do tipo bytes em uma message podem ser especificados como campos criptografados. Esse parâmetro é opcional.required int32 region = 3;// Uma tabela pode conter até quatro campos de chave primária.// Campo de valor geral.required int32 gamesvrid = 4; // Campos gerais podem ser declarados com os modificadores REQUIRED, OPTIONAL e REPEATED.optional int32 logintime = 5 [default = 1];repeated int64 lockid = 6 [packed = true]; // A opção "packed=true" deve ser especificada para os campos declarados com o modificador REPEATED.optional bool is_available = 7 [default = false]; // Você pode especificar um valor padrão para um campo OPTIONAL.optional pay_info pay = 8; // Os campos de valor podem estar em tipos de estrutura personalizados.}message pay_info { // Usa uma message para definir a estrutura.required int64 pay_id = 1;optional uint64 total_money = 2;optional uint64 pay_times = 3;optional pay_auth_info auth = 4;message pay_auth_info { // Os tipos de estrutura suportam definição aninhada.required string pay_keys = 1;optional int64 update_time = 2;}}
syntax = "proto3"; // Indica a conformidade com a especificação de sintaxe do proto3.package myTcaplusTable; // Nome do pacote personalizadoimport "tcaplusservice.optionv1.proto"; // Define algumas informações comuns da tabela TcaplusDB, que devem ser importadas em sua definição de tabela.message player { // Usa uma message para definir a tabela e o nome da message é o nome da tabela.// Somente a message para a qual a opção de chave primária (tcaplusservice.tcaplus_primary_key) é especificada pode ser reconhecida como uma tabela de dados de negócios TcaplusDB. Caso contrário, a message é apenas uma estrutura.// A opção de chave primária especifica a lista de nomes de campo de chave primária separados por vírgulas. Até quatro campos podem ser especificados como chaves primárias.option(tcaplusservice.tcaplus_primary_key) = "uin,name,region";// Usa a opção "tcaplusservice.tcaplus_index" para especificar o índice TcaplusDB.// As chaves de índice incluídas em cada índice devem ser chaves primárias e a interseção de todos os conjuntos de campos de índice não pode estar vazia.option(tcaplusservice.tcaplus_index) = "index_1(uin,region)";option(tcaplusservice.tcaplus_index) = "index_2(uin,name)";// "option(tcaplusservice.tcaplus_sharding_key) = "uin";". Você pode definir explicitamente o campo de fragmentação. Se você não definir explicitamente, o sistema usará um campo de chave primária como o campo de fragmentação por padrão.option(tcaplusservice.tcaplus_field_cipher_suite) = "DefaultAesCipherSuite"; // Usa a função de criptografia padrão "DefaultAesCipherSuite". Esse parâmetro é opcional.option(tcaplusservice.tcaplus_cipher_md5)= "62fee3b53619b7f303c939964c6f2c4b"; // Define o valor MD5 da string de senha de criptografia. Esse parâmetro é opcional.// A seguir mostra a definição de campos de tabela.// Uma tabela TcaplusDB suporta os seguintes tipos de dados:// Tipos aninhados: int32, int64, uint32, uint64, sint32, sint64, bool, fixed64, sfixed64, double, fixed32, sfixed32, float, string, bytes// Tipo aninhado: message// (Até quatro) campos de chave primáriaint64 uin = 1; // Os campos de chave primária devem estar em tipos não aninhados.string name = 2[(tcaplusservice.tcaplus_crypto) = true]; // Os campos do tipo string e do tipo bytes em uma message podem ser especificados como campos criptografados. Esse parâmetro é opcional.int32 region = 3;// Uma tabela pode conter até quatro campos de chave primária.// Campo de valor geral.int32 gamesvrid = 4;int32 logintime = 5;int64 lockid = 6;bool is_available = 7;pay_info pay = 8; // Os campos de valor podem estar em tipos de estrutura personalizados.}message pay_info { // Usa uma message para definir a estrutura.int64 pay_id = 1;uint64 total_money = 2;uint64 pay_times = 3;pay_auth_info auth = 4;message pay_auth_info { // Os tipos de estrutura suportam definição aninhada.string pay_keys = 1;int64 update_time = 2;}}
Esta página foi útil?
Você também pode entrar em contato com a Equipe de vendas ou Enviar um tíquete em caso de ajuda.
comentários