<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>User Documentation on Apache Dubbo</title><link>https://deploy-preview-3199--dubbo.netlify.app/en/overview/reference/pixiu/other/user/</link><description>Recent content in User Documentation on Apache Dubbo</description><generator>Hugo</generator><language>en</language><atom:link href="https://deploy-preview-3199--dubbo.netlify.app/en/overview/reference/pixiu/other/user/index.xml" rel="self" type="application/rss+xml"/><item><title>Quick Start</title><link>https://deploy-preview-3199--dubbo.netlify.app/en/overview/reference/pixiu/other/user/quickstart/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-3199--dubbo.netlify.app/en/overview/reference/pixiu/other/user/quickstart/</guid><description>&lt;p>Let&amp;rsquo;s quickly demonstrate Pixiu&amp;rsquo;s capabilities by converting an HTTP request to a Dubbo2 request.&lt;/p>
&lt;h2 id="use-case">Use Case&lt;/h2>
&lt;p>Pixiu converts the Client&amp;rsquo;s HTTP request into a Dubbo2 request, which is then forwarded to the Dubbo Server. It then converts the Dubbo Server&amp;rsquo;s response back into an HTTP response, finally returning it to the Client.&lt;/p>
&lt;h3 id="architecture-diagram">Architecture Diagram&lt;/h3>
&lt;p>&lt;img alt="Architecture" src="https://deploy-preview-3199--dubbo.netlify.app/imgs/pixiu/user/quick_start_architecture.png">&lt;/p>
&lt;h3 id="example">Example&lt;/h3>
&lt;p>The example path can be found at &lt;code>/samples/http/simple/http-http&lt;/code>.&lt;/p>
&lt;h4 id="dubbo-server-implementation-and-startup">Dubbo Server Implementation and Startup&lt;/h4>
&lt;p>The Dubbo Server provides interfaces for adding, deleting, modifying, and querying users. The specific code implementations can be found in the &lt;code>server&lt;/code> directory under the example path.&lt;/p></description></item><item><title>Start the dubbo-go-pixiu</title><link>https://deploy-preview-3199--dubbo.netlify.app/en/overview/reference/pixiu/other/user/start/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-3199--dubbo.netlify.app/en/overview/reference/pixiu/other/user/start/</guid><description>&lt;h1 id="start">Start&lt;/h1>
&lt;p>How to start the dubbo-go-pixiu&lt;/p>
&lt;h4 id="1-cd-samples-dir">1 cd samples dir&lt;/h4>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-fallback" data-lang="fallback">&lt;span style="display:flex;">&lt;span>cd samples/dubbo/simple
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>we can use start.sh to run samples quickly. for more info, execute command as below for more help&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-fallback" data-lang="fallback">&lt;span style="display:flex;">&lt;span>./start.sh [action] [project]
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>./start.sh help
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>we run body samples below step&lt;/p>
&lt;h4 id="2-prepare-config-file-and-docker">2 prepare config file and docker&lt;/h4>
&lt;p>prepare command will prepare dubbo-server and pixiu config file and start docker container needed&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-fallback" data-lang="fallback">&lt;span style="display:flex;">&lt;span>./start.sh prepare body
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>if prepare config file manually, notice:&lt;/p></description></item><item><title>API Model Introduction</title><link>https://deploy-preview-3199--dubbo.netlify.app/en/overview/reference/pixiu/other/user/api/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-3199--dubbo.netlify.app/en/overview/reference/pixiu/other/user/api/</guid><description>&lt;h1 id="api">Api&lt;/h1>
&lt;p>Introduction to API model, recommended reading before customizing API for api_config.yaml.&lt;/p>
&lt;h2 id="api-gateway">Api Gateway&lt;/h2>
&lt;p>API is the key feature of the dubbo-go-pixiu. With this feature, you can expose your dubbo service as an HTTP service.&lt;/p>
&lt;h3 id="configuration">Configuration&lt;/h3>
&lt;p>Sample:&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-yaml" data-lang="yaml">&lt;span style="display:flex;">&lt;span>&lt;span style="color:#268bd2">name&lt;/span>: api name
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#268bd2">description&lt;/span>: api description
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#268bd2">resources&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#268bd2">path&lt;/span>: &lt;span style="color:#2aa198">&amp;#39;/&amp;#39;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">type&lt;/span>: restful
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">description&lt;/span>: resource documentation
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">methods&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#268bd2">httpVerb&lt;/span>: GET
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">enable&lt;/span>: &lt;span style="color:#cb4b16">true&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">inboundRequest&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">requestType&lt;/span>: http
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">queryStrings&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#268bd2">name&lt;/span>: id
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">required&lt;/span>: &lt;span style="color:#cb4b16">false&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">integrationRequest&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">requestType&lt;/span>: dubbo
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">mappingParams&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#268bd2">name&lt;/span>: queryStrings.id
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">mapTo&lt;/span>: &lt;span style="color:#2aa198">1&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">applicationName&lt;/span>: &lt;span style="color:#2aa198">&amp;#34;BDTService&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">interface&lt;/span>: &lt;span style="color:#2aa198">&amp;#34;com.ikurento.user.UserProvider&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">method&lt;/span>: &lt;span style="color:#2aa198">&amp;#34;GetUser&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">clusterName&lt;/span>: &lt;span style="color:#2aa198">&amp;#34;test_dubbo&amp;#34;&lt;/span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#268bd2">definitions&lt;/span>:
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> - &lt;span style="color:#268bd2">name&lt;/span>: modelDefinition
&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span> &lt;span style="color:#268bd2">schema&lt;/span>: &amp;gt;-&lt;span style="color:#2aa198">
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> {
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> &amp;#34;type&amp;#34; : &amp;#34;object&amp;#34;,
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> &amp;#34;properties&amp;#34; : {
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> &amp;#34;id&amp;#34; : {
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> &amp;#34;type&amp;#34; : &amp;#34;integer&amp;#34;
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> },
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> &amp;#34;type&amp;#34; : {
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> &amp;#34;type&amp;#34; : &amp;#34;string&amp;#34;
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> },
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> &amp;#34;price&amp;#34; : {
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> &amp;#34;type&amp;#34; : &amp;#34;number&amp;#34;
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> }
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> }
&lt;/span>&lt;/span>&lt;/span>&lt;span style="display:flex;">&lt;span>&lt;span style="color:#2aa198"> }&lt;/span> 
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;p>name
:&lt;/p></description></item><item><title>Config File</title><link>https://deploy-preview-3199--dubbo.netlify.app/en/overview/reference/pixiu/other/user/config/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-3199--dubbo.netlify.app/en/overview/reference/pixiu/other/user/config/</guid><description>&lt;h3 id="config">Config&lt;/h3>
&lt;p>Pixiu supports specifying local config file with argument &lt;code>-c&lt;/code> which you can find in those samples pixiu dir.&lt;/p>
&lt;p>Pixiu uses the config abstraction like envoy such as listener, filter, route and cluster.&lt;/p>
&lt;p>Besides, pixiu provides another dubbo-specific config named &lt;code>api_config&lt;/code>, by which &lt;code>dubbo-filter&lt;/code> can transform the http request to dubbo generic call. You can also find it in those samples&amp;rsquo;s pixiu directory.&lt;/p>
&lt;p>The document &lt;a href="https://deploy-preview-3199--dubbo.netlify.app/en/overview/reference/pixiu/other/user/api/">Api Model&lt;/a> provides the api_config specification about the pixiu config abstraction.&lt;/p></description></item><item><title>Start and configuration</title><link>https://deploy-preview-3199--dubbo.netlify.app/en/overview/reference/pixiu/other/user/configurations/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-3199--dubbo.netlify.app/en/overview/reference/pixiu/other/user/configurations/</guid><description>&lt;h3 id="pixiu-startup-command">Pixiu Startup Command&lt;/h3>
&lt;p>Pixiu has two forms: Gateway and Sidecar. The command for the Pixiu executable is as follows, where pixiu is the name of the executable file. Note that the path after -c is the absolute path of the local configuration file.&lt;/p>
&lt;div class="highlight">&lt;pre tabindex="0" style="color:#93a1a1;background-color:#002b36;-moz-tab-size:4;-o-tab-size:4;tab-size:4;">&lt;code class="language-fallback" data-lang="fallback">&lt;span style="display:flex;">&lt;span>pixiu gateway start -c /config/conf.yaml
&lt;/span>&lt;/span>&lt;/code>&lt;/pre>&lt;/div>&lt;h3 id="configuration-detailed-explanation">Configuration Detailed Explanation&lt;/h3>
&lt;p>Pixiu accepts YAML formatted files as its main configuration file for configuring various components of Pixiu. Taking the configuration file from Quick Start as an example, we will explain its components in detail and list possible extensions.&lt;/p></description></item><item><title>Deployment operations</title><link>https://deploy-preview-3199--dubbo.netlify.app/en/overview/reference/pixiu/other/user/deployment/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://deploy-preview-3199--dubbo.netlify.app/en/overview/reference/pixiu/other/user/deployment/</guid><description>&lt;h2 id="1-docker-image-deployment">1. Docker Image Deployment&lt;/h2>
&lt;p>Note: First confirm that Docker is installed and running on your machine.&lt;/p>
&lt;h3 id="1-pull-the-pixiu-image-from-docker-hub">1. Pull the Pixiu image from Docker Hub&lt;/h3>
&lt;p>&lt;code>docker pull phial3/dubbo-go-pixiu:latest&lt;/code>&lt;/p>
&lt;h3 id="2-prepare-pixiu-configuration-as-needed">2. Prepare Pixiu Configuration as Needed&lt;/h3>
&lt;h4 id="detailed-explanation-of-pixiu-configuration-parametersconfigurations">&lt;a href="../configurations/">Detailed Explanation of Pixiu Configuration Parameters&lt;/a>&lt;/h4>
&lt;p>Prepare the &lt;code>log.yml&lt;/code> and &lt;code>conf.yaml&lt;/code> configuration files, and mount these two configuration files to the local directory when starting Pixiu.&lt;/p>
&lt;h3 id="3-start-pixiu">3. Start Pixiu&lt;/h3>
&lt;p>&lt;strong>Foreground Start&lt;/strong>: Convenient to check if the service information is running normally.&lt;/p></description></item></channel></rss>