Comments (7)
Yeah, that's a great idea, that's definitely something we want to build for Apollo.
from apollo-server.
I think the first thing someone should do before we look into the performance of the server itself, is to look into the performance of the execute function in graphql-js, because that's where most of the time is spent (apollo-server itself doesn't have that much code). Would be really cool if someone could pick that up and try to profile graphql-js.
from apollo-server.
I think the start is having good loggers via the decorators you're working on, right? Then if the connectors integrate nicely with the logger you can get a lot of info about what backend calls are happening.
from apollo-server.
Yeah, that's the plan!
from apollo-server.
I think this will be well covered with Tracer, which will tell you how much time each resolve function took to run, in addition to logging how much time is spent parsing, validating and executing the request. I think monitoring server resources (CPU, memory) is a separate issue, but could also be added to tracer, if necessary.
from apollo-server.
I'm already familiar with graphql-js execution code because of the Observables work i've done there.
i can take a look at that in the future, but i think that the ability to instrument and profile the server operation is needed and can be done regardless the graphql-js engine side..
from apollo-server.
Closing this since it's no longer on top of our list of priorities. Most performance issues with GraphQL servers can be solved with tools like Apollo Optics or other instrumentation in my experience.
from apollo-server.
Related Issues (20)
- Apis that have their requests cached dont need to make unnecessary auth token fetches
- Document known mitigated security issue in `@koa/cors` for AS3 users HOT 1
- Update `@koa/cors` dependency for AS3 (or why we don't intend to) HOT 2
- Share and modify variables between Express and the GraphQL/Apollo server HOT 1
- Error: ApolloServer<BaseContext>' is not assignable to type 'ApolloServer<ExpressContext> HOT 3
- callback function for onSchemaLoadOrUpdate when upgrading from AS v3 to AS v4 HOT 3
- Allow plugins to throw meaningful GraphQL errors
- Getting started tutorial has typescript issues...
- Delay when subscription is closed on client side of the router when using callback
- Documentation and dynamic cache control feature of Apollo leverages incompatible GraphQl type interface. HOT 4
- Disabling introspection should also disable "Did you mean ...?" HOT 3
- Undefined 'code' TypeError within errorNormalize HOT 2
- Link broken for plugin
- The server crashes if a promise with deferred handling rejects while another promise is trying to resolve HOT 7
- Upgrade Express version to mitigate the Open Redirect Vulnerability in Express.js for malformed URLs, specifically targeting versions below 4.19.2. HOT 1
- Marking text works unreliable
- CodeSandbox setup is failing HOT 1
- Passing context to datasource loses it's reference, meaning, we cannot mutate the context between the resolver and datasources. HOT 2
- Provide basic CSS formatting for markdown rendered in description fields for the sandbox
- Redirect in Context HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from apollo-server.