Wydajność interfejsu internetowego?
Myślałem ,
TheWebApi
wraz zrouting mechanism
działa w taki sposób, że odczytujehttp verb
(GET POST itp ...), a następnie szuka dopasowanych nazw metod / parametrów:
Na przykład :
Jeśli to jestGET
a URI jestapi/Customers/5
:
metoda powinna zacząć się odGet
jeśli takID
przeszukaj więc metodę, która akceptuje int jako parametr.
itd. (jest więcej zasad).
W większości wierzę, że zrobili to za pomocą refleksji.
Pytanie:
Czy nie jest to uderzenie wydajności dla każdego żądania URI - przeszukiwanie wszystkich tych danych tylko po to, aby dołączyć metodę?
Gdzie mogę łatwo wysłać bardzo krótki ciąg znaków od klienta, który będzie oznaczał metodę po stronie serwera?
Dlaczego nie zrobić tego w prosty sposób? Ok, ponieważ chcemy używać czasowników http jako znaczenia. DOBRZE. ale tyle operacji, aby wykonać metodę
Przykład 1
get api/Customers/5
możliwe
a.ashx?m=gc&id=5 (method=GetCustomer & id=5)
przykład # 2
put api/Customers/5?v=123
możliwe
a.ashx?m=uc&id=5?v=123' (method=UpdateCustomer & id=5 & value=123)
mój jest jeszcze krótszy.
Nie zrozum mnie źle. Wierzę, że to api zrobili bardzo mądrzy ludzie, którzy wiedzieli, o czym mówią.
Po prostu chcę wiedzieć, czego mi brakuje.