ODE
\[ y'(x) (a x+b y(x))+y(x)=0 \] ODE Classification
[[_homogeneous, `class A`], _rational, [_Abel, `2nd type`, `class A`]]
Book solution method
Change of Variable, new independent variable
Mathematica ✓
cpu = 0.202315 (sec), leaf count = 36
\[\text {Solve}\left [\frac {\log \left (a+\frac {b y(x)}{x}+1\right )+a \log \left (\frac {y(x)}{x}\right )}{a+1}+\log (x)=c_1,y(x)\right ]\]
Maple ✓
cpu = 0.075 (sec), leaf count = 23
\[\left [x +\frac {y \left (x \right ) b}{1+a}-y \left (x \right )^{-a} \textit {\_C1} = 0\right ]\] Mathematica raw input
DSolve[y[x] + (a*x + b*y[x])*y'[x] == 0,y[x],x]
Mathematica raw output
Solve[Log[x] + (a*Log[y[x]/x] + Log[1 + a + (b*y[x])/x])/(1 + a) == C[1], y[x]]
Maple raw input
dsolve((a*x+b*y(x))*diff(y(x),x)+y(x) = 0, y(x))
Maple raw output
[x+y(x)/(1+a)*b-y(x)^(-a)*_C1 = 0]