You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This intend to give a benchmark comparison between Guacamole protocol and Occamy protocol design.
name old time/op new time/op delta
InstructionParser/occamy-0-6 325ns ± 2% 126ns ± 3% -61.16% (p=0.000 n=10+9)
InstructionParser/occamy-1-6 54.3µs ± 1% 1.2µs ± 9% -97.73% (p=0.000 n=9+10)
name old alloc/op new alloc/op delta
InstructionParser/occamy-0-6 120B ± 0% 96B ± 0% -20.00% (p=0.000 n=10+10)
InstructionParser/occamy-1-6 36.4kB ± 0% 8.3kB ± 0% -77.26% (p=0.000 n=10+10)
name old allocs/op new allocs/op delta
InstructionParser/occamy-0-6 7.00 ± 0% 3.00 ± 0% -57.14% (p=0.000 n=10+10)
InstructionParser/occamy-1-6 23.0 ± 0% 3.0 ± 0% -86.96% (p=0.000 n=10+10)
As we can see, eliminate the numbers of instruction length reduces the parsing cost significantly.
See #3.
Copy file name to clipboardExpand all lines: README.md
+6-4
Original file line number
Diff line number
Diff line change
@@ -19,13 +19,15 @@ in a single middleware application. Any client that involves Guacamole protocol
19
19
uses WebSocket for authentication can directly switch to interact to Occamy
20
20
without any changes.
21
21
22
-
Read more details in [docs](./docs/README.md)
22
+
Read more details in [docs](./docs/README.md).
23
+
24
+
## Routers
25
+
26
+
Occamy offers two APIs `/api/v1/login`, which distribute JWT tokens for authentication and `/api/v1/connect` for WebSocket based Guacamole connection. These two APIs are simple enough to serve all users.
23
27
24
28
## Contributing
25
29
26
-
Easiest way to contribute is to provide feedback!
27
-
We would love to hear what you like and what you think is missing.
28
-
PRs are welcome. Please follow the given PR template before you send your pull request.
30
+
Easiest way to contribute is to provide feedback! We would love to hear what you like and what you think is missing. PRs are welcome. Please follow the given PR template before you send your pull request.
Copy file name to clipboardExpand all lines: docs/README.md
+18-14
Original file line number
Diff line number
Diff line change
@@ -9,33 +9,37 @@ Futhermore, `guacd` manages connection in different processes, which can limits
9
9
connection of Guacamole application.
10
10
11
11
```
12
-
|-- Browser --|----- Guacamole Server ------|--- Intranet ---|
12
+
|-- Browser --|-------- Guacamole Server -----------|--- Intranet ---|
13
13
14
-
UserA ---+ +---- RDP server
15
-
+------ Guacamole Servlet |
16
-
UserB ---+ | +---- VNC server
17
-
+------- guacd -------+
18
-
+---- Others
14
+
UserA --------+ +---- RDP server
15
+
+------ Guacamole Servlet |
16
+
UserB --------+ | +---- VNC server
17
+
+------- guacd -------+
18
+
+---- Others
19
19
```
20
20
21
21
_Figure 1: Guacamole Architecture_
22
22
23
-
Occamy solves these issue, and it uses JWT for authentication as default option, manages
24
-
all connection in mutiple thread rather than multiple processes.
23
+
Occamy solves these issues, and it uses JWT for authentication as default option, manages
24
+
all connection in mutiple thread rather than multiple processes, as shown in Figure 2.
25
25
26
26
```
27
-
|-- Browser --|-- Occamy Server --|--- Intranet ---|
27
+
|-- Browser --|---- Occamy Server -----|--- Intranet ---|
28
28
29
29
30
-
UserA ---+ +---- RDP server
31
-
+------ Occamy ----------+
32
-
UserB ---+ +---- VNC server
33
-
|
34
-
+---- Others
30
+
UserA --------+ +---- RDP server
31
+
+------ Occamy ----------+
32
+
UserB --------+ +---- VNC server
33
+
|
34
+
+---- Others
35
35
```
36
36
37
37
_Figure 2: Occamy Architecture_
38
38
39
+
## Protocol Instructions
40
+
41
+
Refer to [Guacamole protocol reference](https://guacamole.apache.org/doc/gug/protocol-reference.html). Note that Occamy has no handshake process between client and Occamy, one can simply POST the connection information to Occamy for getting authentication tokens.
0 commit comments