Skip to content
/ web Public

The Bhojpur Web is a high performance, HTTP client/server engine applied within the Bhojpur.NET Platform ecosystem to deliver secure W3C standards compliant applications and services. It enables faster distributed enterprise application development and testing.

License

Notifications You must be signed in to change notification settings

bhojpur/web

Repository files navigation

Bhojpur Web - Application Service Framework

The Bhojpur Web is an enterprise grade, distributed applications/services framework, and a client/server engine used by the Bhojpur.NET Platform for secure applications and/or services delivery using HTTP(S) protocols. It is pre-integrated with the Bhojpur IAM for enable identity and access management.

Server Engine

It is used as a primary HTTP(S) server engine within the Bhojpur.NET Platform ecosystem to host a wide range of web-enabled applications or services. It complies fully with the HTTP1.1, HTTP/2.0 protocol standards. It can function as a WebAssembly hosting environment as well.

Client Engine

Just like the cURL utility, it could be utilized as an HTTP/S client software by application software testing tools. For example, web performance testing tools benefit from the statistics framework.

WebAssembly Application

The client-side framework features development of web applications based on WebAssembly in Go. You can compile a custom developed web application using the following commands.

$ GOARCH=wasm GOOS=js go build -o web/app.wasm
$ go build -o myapp

NOTE that the build output is explicitly set to web/app.wasm. The reason why it is that way: the HTTP Handler associated from the client-side engine expects it to be a static resource located at the /web/app.wasm path.

Reverse Proxy

It is used as a primary Reverse Proxy server within the Bhojpur.NET Platform ecosystem to route HTTP traffic securely among applications.

Application Generators

Using template files, it can automatically generate web application for multiple languages.

$ webctl generate --pkg testdata views/... --o views.go

Application Performance Testing

The Bhojpur Web is used as a distributed application load testing tool. We benchmark HTTP servers and applications using different features built into the framework.

Load Testing Usage

$ webctl perftest [options] URL

Application Options: --num-requests Number of requests to make (1) --concurrent Number of concurrent connections to make (1) --keep-alive Use keep alive connection --no-gzip Disable gzip accept encoding --secure-tls Validate TLS/SSL certificates

For Example

$ webctl perftest --num-requests 100 --concurrent 4 https://www.bhojpur.net

Then, it would display something like this

    # Requests: 100
    # Successes: 100
    # Failures: 0
    # Unavailable: 0
    Duration: 1.719238256s
    Average Request Duration: 13.575435ms

About

The Bhojpur Web is a high performance, HTTP client/server engine applied within the Bhojpur.NET Platform ecosystem to deliver secure W3C standards compliant applications and services. It enables faster distributed enterprise application development and testing.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published