dotansimha / graphql-yoga

🧘 Rewrite of a fully-featured GraphQL Server with focus on easy setup, performance & great developer experience. The core of Yoga implements WHATWG Fetch API and can run/deploy on any JS environment.
https://the-guild.dev/graphql/yoga-server
MIT License
8.21k stars 569 forks source link

Update AWS Lambda docs with streaming support #3354

Open ardatan opened 2 months ago

ardatan commented 2 months ago

AWS Lambda can take a response stream as body, so we can pass Yoga's response stream to the lambda function to have a better control over Lambda's HTTP logic.

changeset-bot[bot] commented 2 months ago

⚠️ No Changeset found

Latest commit: e6a35e6df02e73ee2da9ef0c94982d875a08bdba

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

github-actions[bot] commented 2 months ago

Apollo Federation Subgraph Compatibility Results

Federation 1 Support Federation 2 Support
_service🟢
@key (single)🟢
@key (multi)🟢
@key (composite)🟢
repeatable @key🟢
@requires🟢
@provides🟢
federated tracing🟢
@link🟢
@shareable🟢
@tag🟢
@override🟢
@inaccessible🟢
@composeDirective🟢
@interfaceObject🟢

Learn more:

github-actions[bot] commented 2 months ago
### 💻 Website Preview The latest changes are available as preview in: [https://d9d0b995.graphql-yoga.pages.dev](https://d9d0b995.graphql-yoga.pages.dev)
github-actions[bot] commented 2 months ago

✅ Benchmark Results

     ✓ no_errors{mode:graphql}
     ✓ expected_result{mode:graphql}
     ✓ no_errors{mode:graphql-jit}
     ✓ expected_result{mode:graphql-jit}
     ✓ no_errors{mode:graphql-response-cache}
     ✓ expected_result{mode:graphql-response-cache}
     ✓ no_errors{mode:graphql-no-parse-validate-cache}
     ✓ expected_result{mode:graphql-no-parse-validate-cache}

     checks.......................................: 100.00% ✓ 425860      ✗ 0     
     data_received................................: 1.7 GB  14 MB/s
     data_sent....................................: 86 MB   717 kB/s
     http_req_blocked.............................: avg=1.38µs   min=951ns    med=1.25µs   max=349.36µs p(90)=1.8µs    p(95)=2.02µs  
     http_req_connecting..........................: avg=2ns      min=0s       med=0s       max=145.47µs p(90)=0s       p(95)=0s      
     http_req_duration............................: avg=354.88µs min=213.51µs med=319.14µs max=24.84ms  p(90)=456.18µs p(95)=475.73µs
       { expected_response:true }.................: avg=354.88µs min=213.51µs med=319.14µs max=24.84ms  p(90)=456.18µs p(95)=475.73µs
     ✓ { mode:graphql-jit }.......................: avg=278.97µs min=213.51µs med=257.1µs  max=18.13ms  p(90)=287.28µs p(95)=298.55µs
     ✓ { mode:graphql-no-parse-validate-cache }...: avg=478.77µs min=401.32µs med=452.69µs max=9.32ms   p(90)=492.56µs p(95)=519.42µs
     ✓ { mode:graphql-response-cache }............: avg=339.47µs min=269.93µs med=320.57µs max=6.25ms   p(90)=352.72µs p(95)=364.24µs
     ✓ { mode:graphql }...........................: avg=357.79µs min=272.31µs med=325.26µs max=24.84ms  p(90)=367.87µs p(95)=401.29µs
     http_req_failed..............................: 0.00%   ✓ 0           ✗ 212930
     http_req_receiving...........................: avg=33.65µs  min=16.91µs  med=33.36µs  max=7.44ms   p(90)=38.94µs  p(95)=40.83µs 
     http_req_sending.............................: avg=7.73µs   min=5.79µs   med=6.91µs   max=378.63µs p(90)=10.43µs  p(95)=11.12µs 
     http_req_tls_handshaking.....................: avg=0s       min=0s       med=0s       max=0s       p(90)=0s       p(95)=0s      
     http_req_waiting.............................: avg=313.49µs min=181.5µs  med=278.11µs max=24.63ms  p(90)=415.13µs p(95)=432.43µs
     http_reqs....................................: 212930  1774.386415/s
     iteration_duration...........................: avg=558.82µs min=382.63µs med=519.19µs max=25.54ms  p(90)=664.08µs p(95)=689.22µs
     iterations...................................: 212930  1774.386415/s
     vus..........................................: 1       min=1         max=1   
     vus_max......................................: 2       min=2         max=2   
github-actions[bot] commented 2 months ago

🚀 Snapshot Release (alpha)

The latest changes of this PR are available as alpha on npm (based on the declared changesets): Package Version Info
@graphql-yoga/apollo-link 3.6.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/urql-exchange 3.6.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/graphiql 4.3.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
graphql-yoga 5.6.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/nestjs 3.6.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/nestjs-federation 3.6.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/plugin-apollo-inline-trace 3.6.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/apollo-managed-federation 0.3.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/plugin-apq 3.6.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/plugin-csrf-prevention 3.6.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/plugin-defer-stream 3.6.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/plugin-disable-introspection 2.6.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/plugin-graphql-sse 3.6.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/plugin-jwt 2.6.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/plugin-persisted-operations 3.6.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/plugin-prometheus 5.3.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/plugin-response-cache 3.8.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/plugin-sofa 3.6.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎
@graphql-yoga/render-graphiql 5.6.1-alpha-20240703125202-e6a35e6d npm ↗︎ unpkg ↗︎